Unity Connection and inbound email

Answered Question
Dec 15th, 2008
User Badges:
  • Silver, 250 points or more

I know that the first thing that will happen when I enable IMAP access to voicemail is that people will hit the reply button and try to reply. What options does Connection offer? Will it accept email? Will it accept wav attachments? I tried replying but I don't see the message anywhere. I've added the IP addresses to the access list.


Correct Answer by lindborg about 8 years 6 months ago

I assume you're running 7.0 here...


You can enable an option to try and play attachments in the after message menu - this is done with the Custom Key Map tool, it's not an option in any of the "out of the box" conversations. Go to the CKM tool on the SA, have it import the conversation options from the conversation you're doing (say the standard conversation) and then in the after message menu tab map the "Play Message Attachments" option to a key press.


Map one of your test users to that conversation and give it a whirl.


If it's a text based attachment, it'll try to TTS it, if it's a WAV file it'll try and play it and so on.


Be aware that the codec support on the Linux based Connection is a bit more restrictive than the Windows based Unity - when testing stick with G711 MuLaw if you can (although G729a and PCM is supported). If it can't play it for whatever reason it'll say that it can't play the attachment after telling you what it is.

  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 5 (2 ratings)
Loading.
culittle Tue, 12/16/2008 - 06:45
User Badges:
  • Cisco Employee,

http://www.cisco.com/en/US/docs/voice_ip_comm/connection/7x/administration/guide/7xcucsag175.html#wp1061313


SMTP Proxy Addresses


Cisco Unity Connection uses SMTP proxy addresses to map the sender of an SMTP message sent from an IMAP client to the appropriate user, and to map each recipient to the appropriate user or VPIM contact. See the "Configuring IMAP Settings" chapter of the System Administration Guide for Cisco Unity Connection for instructions on configuring the Connection server, user accounts, and user workstations for IMAP client access.


Note At a minimum, we recommend that you configure each user with an SMTP proxy address for the corporate email account of the user.


Do one or more of the following procedures, depending on whether you want to configure users individually or in bulk.


•To Configure SMTP Proxy Addresses For an Individual User or Contact


•To Configure SMTP Proxy Addresses for Multiple Users at Once


You cannot configure proxy addresses for user templates.


To Configure SMTP Proxy Addresses For an Individual User or Contact


Step 1 In Cisco Unity Connection Administration, find the user account that you want to edit.


Step 2 On the Edit menu, click SMTP Proxy Addresses.


Step 3 On the SMTP Proxy Addresses page, click Add New.


Step 4 In the SMTP Proxy Addresses table, enter an address in the SMTP Proxy Address column.


Step 5 Repeat Step 3 and Step 4 for each address that you want to add.


Note If the user has a relay address configured on the Message Actions page, you should add that relay address as an SMTP proxy address for the user.


Step 6 When you are done adding addresses, click Save.


To Configure SMTP Proxy Addresses for Multiple Users at Once


Step 1 In Cisco Unity Connection Administration, expand Tools, and then click Bulk Edit.


Step 2 In the Bulk Edit utility, click Users with Voice Mail, then find and select the user accounts that you want to edit.


Step 3 Click Next.


Step 4 Click the SMTP Proxy Addresses tab.


Step 5 To add one or more SMTP proxy addresses to the addresses that are already configured for the users you are editing, click Append SMTP Proxy Addresses; to delete all existing proxy addresses and replace them with one or more new addresses, click Override SMTP Proxy Addresses.


Step 6 Click Add New.


Step 7 In the new field, enter a pattern for the SMTP proxy address. You can enter a combination of text and tokens that Connection replaces with a value from the user profile. (For example, Connection replaces %Alias% with the alias from each user profile when editing the corresponding user.) The available tokens are:


•%FirstName%


•%LastName%


•%Alias%


•%Extension%


Step 8 Repeat Step 6 and Step 7 for each SMTP proxy address pattern you want to add.


Step 9 When you are done adding address patterns, click Next, then click Finish.

lfulgenzi Tue, 12/16/2008 - 14:30
User Badges:
  • Silver, 250 points or more

Cool. That worked like a charm. Two questions:


-where does the email go if I don't have an SMTP proxy address set up? is it just sent to /dev/null?


-is it possible to send an email with a wav attachment so i can listen to it on the phone? i'm looking at a custom solution/application for our existing email client (Zimbra) to be able to reply to VM. i tried a simply wav attachment formatted properly (the same as the original VM) but it just said "an email with attachments" and didn't play the wav file

Correct Answer
lindborg Tue, 12/16/2008 - 15:15
User Badges:
  • Cisco Employee,

I assume you're running 7.0 here...


You can enable an option to try and play attachments in the after message menu - this is done with the Custom Key Map tool, it's not an option in any of the "out of the box" conversations. Go to the CKM tool on the SA, have it import the conversation options from the conversation you're doing (say the standard conversation) and then in the after message menu tab map the "Play Message Attachments" option to a key press.


Map one of your test users to that conversation and give it a whirl.


If it's a text based attachment, it'll try to TTS it, if it's a WAV file it'll try and play it and so on.


Be aware that the codec support on the Linux based Connection is a bit more restrictive than the Windows based Unity - when testing stick with G711 MuLaw if you can (although G729a and PCM is supported). If it can't play it for whatever reason it'll say that it can't play the attachment after telling you what it is.

lfulgenzi Tue, 12/16/2008 - 15:44
User Badges:
  • Silver, 250 points or more

Sweet! Although it took me a while to find where I set that parameter for the user. ;)


In this older post, you mention some way to send an email so that it simply plays as a voicemail message. Does this apply to Unity Connection 7?


http://forums.cisco.com/eforum/servlet/NetProf?page=netprof&forum=Unified%20Communications%20and%20Video&topic=Unified%20Communications%20Applications&topicID=.ee835d2&fromOutline=&CommCmd=MB%3Fcmd%3Ddisplay_location%26location%3D.1dd5f2d0



lindborg Tue, 12/16/2008 - 15:53
User Badges:
  • Cisco Employee,

No, that was a post on how to programatically setup a message for Unity to recognize it as a voice mail (tag it with MAPI extended properties and such).


For Connection 7.x you can send a message in that contains only a wav file named "VoiceMessage.wav" and nothing else (no email body or the like) and it'll play it as a voice message without having to go into the play attachments conversation. COBRAS uses this method when restoring messages. It's a bit tricky to get an email setup with no text or html body at all (many email clients automatically stick one on there even if you have it empty) - I use the a IMAP mail program suite which makes constructing an EML file and sending it off easy.

lfulgenzi Tue, 12/16/2008 - 16:03
User Badges:
  • Silver, 250 points or more

Cool, thanks again. Not sure how we'll be able to swing that with a web based email client.


Our goal is to try and create a VMO equivalent for Zimbra.


Any ideas? Will there be an API of sorts?

lindborg Tue, 12/16/2008 - 16:11
User Badges:
  • Cisco Employee,

Not sure what you mean - SMTP and IMAP are already there, doesn't get much better than that. If you mean will there be a way to relax the format restrictions and treat anything with a WAV included as a straight voice mail, probably not... it'll have to meet the format restrictions if it'll be treated as a voice message as opposed to a mail "with attachments".

lfulgenzi Tue, 12/16/2008 - 16:21
User Badges:
  • Silver, 250 points or more

I guess I was looking for a way to mimic VMO within Zimbra. I'm not sure how much control a zimlet (Zimbra's java applet) has over message format, i.e. removing everything except the attachment. I tried formatting the message as plain text and not including anything in the body but that didn't work.


But, as you say, if that's all there is, that's all there is. I just wanted to make sure there wasn't some other tool, API or document I could read.


Thanks for all your help Jeff.

lindborg Tue, 12/16/2008 - 16:54
User Badges:
  • Cisco Employee,

well, I'm unfamiliar with "zimlets" but if you can save the resulting message off as an EML file or something, we can take a look at it and see where it's tripping up - I can post an EML of a message that COBRAS sends in as a voice mail if you want to look at it - if you can UUENCODE the WAV file the rest is just text wrangling - should be doable I'd think.

lfulgenzi Tue, 12/16/2008 - 17:08
User Badges:
  • Silver, 250 points or more

Thanks. I'll do some more testing tomorrow and post the results files. I'm also gonna test with PINE (yeah, PINE!) and see if that makes any difference.


If you could post the EML from COBRAS that would be cool.

lindborg Wed, 12/17/2008 - 08:30
User Badges:
  • Cisco Employee,

ok- I've pasted the top part of the EML file of a message COBRAS is getting ready to send across to Connection 7.0 via SMTP that's just a simple voice mail. In this case it's from an outside caller - marked for normal delivery and all that, nothing fancy.


Note that the Connection MTA cheats a little - it uses the date at the top for the original arival time as well (i.e. this will be the time announced for when the message was sent). IMAP does provide for a "original sent time" field but Connection does not look for it.


Anyway, here it is:

==========================



Date: Fri, 12 Dec 2008 16:56:03 +0000

From: "Unity Connection Messaging System" <[email protected]>

To: "Jeff lindborg" <[email protected]>

X-CiscoUnity-Recipients: [email protected]

MIME-Version: 1.0

Message-Id: MAL.ca3b53b6-a2b3-4e62-ad96-d742bbaccbfe

Importance: Normal

Sensitivity: None

Subject: Message from an unidentified caller

X-CiscoUnity-MessageType: Voice

Content-Type: audio/wav;

name=VoiceMessage.wav

Content-Transfer-Encoding: Base64

Content-Disposition: inline;

filename=VoiceMessage.wav;

voice=Voice-Message


UklGRsLlAABXQVZFZm10IBIAAAAHAAEAQB8AAEAfAAABAAgAAABmYWN0BAAAAJDlAABkYXRh

kOUAAMnIxcPDyNhZSEVIS1Ju/97U59zLy8/Q0N3d0NnbysbW5Nja39/o3eVaU01NYPjgztbk

32Be5+VZUWd6/2lSSURJT1FZU0ZGTU5ZU0pLRkA+Pz01Ly8xNDE0O0FIRUNGSVZs/PHl3uDb

lfulgenzi Wed, 12/17/2008 - 10:57
User Badges:
  • Silver, 250 points or more

Thanks Jeff. Here's the first one from the Zimbra webmail client. I can play these attachments using the key sequence you suggested, but it comes through as email:


Received: from esa-jnhn.mail.uoguelph.ca (131.104.91.44) by uogcxn99 with Connection SMTP Server; Wed, 17 Dec 2008 18:43:02 UTC+0000

X-IronPort-Anti-Spam-Filtered: true

X-IronPort-Anti-Spam-Result: AhQHAIvWSEmDaFvN/2dsb2JhbACBbFkqFI8sCqxCWJE0gwY

X-IronPort-AV: E=Sophos;i="4.36,238,1228107600";

d="wav'148?scan'148,208,217,148";a="23055253"

Received: from superior.cs.uoguelph.ca (HELO zcs2.mail.uoguelph.ca) ([131.104.91.205])

by esa-jnhn-pri.mail.uoguelph.ca with ESMTP; 17 Dec 2008 13:43:02 -0500

Received: from zcs2.mail.uoguelph.ca (localhost.localdomain [127.0.0.1])

by zcs2.mail.uoguelph.ca (Postfix) with ESMTP id B4696224422

for <[email protected]>; Wed, 17 Dec 2008 13:43:02 -0500 (EST)

Date: Wed, 17 Dec 2008 13:43:02 -0500 (EST)

From: Lelio Fulgenzi <[email protected]>

To: [email protected]

Message-ID: <[email protected]a>

In-Reply-To: <[email protected]ca>

Subject:

MIME-Version: 1.0

Content-Type: multipart/mixed;

boundary="----=_Part_9693_172593172.1229539382638"

X-Originating-IP: [131.104.25.72]

X-Mailer: Zimbra 5.0.7_GA_2450.RHEL4_64 (ZimbraWebClient - FF3.0 (Win)/5.0.7_GA_2450.RHEL4_64)

x-CiscoUnity-DbMessageId: 36bb41ca-24f6-4195-ab9d-4acead22e0b8


------=_Part_9693_172593172.1229539382638

Content-Type: multipart/alternative;

boundary="----=_Part_9694_1670518354.1229539382638"


------=_Part_9694_1670518354.1229539382638

Content-Type: text/plain; charset=utf-8

Content-Transfer-Encoding: 7bit




------=_Part_9694_1670518354.1229539382638

Content-Type: text/html; charset=utf-8

Content-Transfer-Encoding: 7bit


p { margin: 0; }


------=_Part_9694_1670518354.1229539382638--

------=_Part_9693_172593172.1229539382638

Content-Type: audio/x-wav; name=VoiceMessage.wav

Content-Disposition: attachment; filename=VoiceMessage.wav

Content-Transfer-Encoding: base64


UklGRnxsAABXQVZFZm10IBIAAAAHAAEAQB8AAEAfAAABAAgAAABmYWN0BAAAAEpsAABkYXRhSmwA

AP//f3///39///9/fX59fHx8e3t7e35/fn9///7+




a2trbGtramtrampqampqamtra2xs


------=_Part_9693_172593172.1229539382638--



lfulgenzi Wed, 12/17/2008 - 11:07
User Badges:
  • Silver, 250 points or more

The second one. This was sent from Pine. It looks a lot cleaner, but for some reason, it still comes up as an email. When I try to listen to it, it tells me the properties, then says "the system is temporarily unable to complete your call, call again later". If I press # before the properties are completed, and say play attachments it tells me that it's unable to play the audio attachment. I'm guessing the encoding is an issue. I'm going to try and find if I can change the encoding.


Received: from gigi.cs.uoguelph.ca (131.104.94.210) by uogcxn99 with Connection SMTP Server; Wed, 17 Dec 2008 19:02:30 UTC+0000

Received: from muncher.cs.uoguelph.ca (muncher.cs.uoguelph.ca [131.104.91.102])

by gigi.cs.uoguelph.ca (8.13.1/8.13.1) with ESMTP id mBHJ2UHe028395

for <[email protected]>; Wed, 17 Dec 2008 14:02:30 -0500

Received: from localhost ([email protected])

by muncher.cs.uoguelph.ca (8.11.7p3+Sun/8.11.6) with ESMTP id mBHJ4Ew23001

for <[email protected]>; Wed, 17 Dec 2008 14:04:14 -0500 (EST)

X-Authentication-Warning: muncher.cs.uoguelph.ca: lelio owned process doing -bs

Date: Wed, 17 Dec 2008 14:04:14 -0500 (EST)

From: Lelio Fulgenzi <[email protected]>

X-X-Sender: [email protected]

To: [email protected]

Message-ID: <[email protected]>

MIME-Version: 1.0

Content-Type: MULTIPART/MIXED; BOUNDARY="-559023410-824023566-1229540654=:17304"

X-Scanned-By: MIMEDefang 2.63 on 131.104.94.210

x-CiscoUnity-DbMessageId: a45d5f89-05b7-45ad-ba1a-c7795551958a


---559023410-824023566-1229540654=:17304




---559023410-824023566-1229540654=:17304

Content-Type: APPLICATION/octet-stream; name=VoiceMessage.wav

Content-Transfer-Encoding: BASE64

Content-ID: <[email protected]>

Content-Description:

Content-Disposition: attachment; filename=VoiceMessage.wav


UklGRnxsAABXQVZFZm10IBIAAAAHAAEAQB8AAEAfAAABAAgAAABmYWN0BAAAAEpsAABkYXRhSmwA


a2trbGtramtrampqampqamtra2xs


---559023410-824023566-1229540654=:17304--



lindborg Wed, 12/17/2008 - 13:20
User Badges:
  • Cisco Employee,

Well - at a minimum I know you'll need the X-CiscoUnity-Status and X-CiscoUnity-MessageType properties in the header - below is pasted about the simplest setup that Connection will present as a voice mail I think.


I'm not sure what kind of control, if any, you have over the format - doesn't sound like much - given that I'm not sure how you hope to go about this - can you run any kind of application from within this framework? Any hope of adding/modifying anything about the mail format before sending it off?



=============

content-transfer-encoding: base64

X-CiscoUnity-Status: NEW

Importance: Normal

Sensitivity: None

X-CiscoUnity-MessageType: Voice

Date: 10 Dec 2008 15:56:14.0000 UT

Content-Type: audio/x-wav;name="VoiceMessage.wav"

Subject: Message from 12007

To: "Jeff Lindborg" <[email protected]>

From: unityconnection


UklGRjJPAQBXQVZFZm10IBIAAAAHAAEAQB8AAEAfAAABAAgAAABmYWN0BAAAAABPAQBkYXRh

AE8BAP7///7+/v3+/v39/v39/v39/v////7+/v////////7+/v3+/v3+/v79/v38/f38/f38

<...>

lfulgenzi Wed, 12/17/2008 - 13:26
User Badges:
  • Silver, 250 points or more

OK, I'll keep this for reference. I've talked to one of our developers and he thinks this should all be doable with the zimlets. He sees three components:


1) activating the zimlet based on some message properties

2) building the zimlet and accessing the microphone and speaker

3) sending the mail


Believe it or not, he said part three would be the easiest! ;)


If we ever get around to doing this, I'll be sure to post.


Thanks again for all your help.


Actions

This Discussion