# [messaging]() Messaging模块管理设备通讯功能,可用于短信、彩信、邮件发送等。通过plus.messaging可获取设备通讯管理对象。另外也可以直接通过html中的href直接快速发送短信、拨打电话、发送邮件等。 ### 常量: - [TYPE_SMS](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.TYPE_SMS): 简单短信类型常量 - [TYPE_MMS](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.TYPE_MMS): 彩信类型常量 - [TYPE_EMAIL](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.TYPE_EMAIL): 邮件类型常量 ### 方法: - [createMessage](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.createMessage): 创建消息对象 - [sendMessage](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.sendMessage): 发送消息 ### 对象: - [Message](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.Message): 消息对象 - [BodyType](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.BodyType): 消息体内容类型 ### 回调方法: - [MessageSendSuccessCallback](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.MessageSendSuccessCallback): 消息发送成功的回调函数 - [MessageErrorCallback](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.MessageErrorCallback): 消息发送失败的回调函数 ### 权限: permissions ~~~ "Messaging": { "description": "访问设备通讯能力" } ~~~ # [TYPE_SMS]() 简单短信类型常量 ~~~ plus.messaging.TYPE_SMS; ~~~ ### 说明: Number 类型 消息类型常量,Number类型,固定值为1,用于创建并发送短信。 ### 平台支持 - Android - 2.2+ (支持): 支持 - iOS - 4.3+ (支持): 支持 # [TYPE_MMS]() 彩信类型常量 ~~~ plus.messaging.TYPE_MMS; ~~~ ### 说明: Number 类型 消息类型常量,Number类型,固定值为2,用于创建并发送多媒体短信(彩信)。 ### 平台支持 - Android - 2.2+ (支持): 支持 - iOS - 4.3+ (不支持): 不支持彩信的发送 # [TYPE_EMAIL]() 邮件类型常量 ~~~ plus.messaging.TYPE_EMAIL; ~~~ ### 说明: Number 类型 消息类型常量,Number类型,固定值为3,用于创建并发送邮件。 ### 平台支持 - Android - 2.2+ (支持): 支持 - iOS - 4.3+ (支持): 支持 # [createMessage]() 创建消息对象 ~~~ Message plus.messaging.createMessage( type ); ~~~ ### 说明: 创建指定类型的消息,消息类型可取plus.messaging.TYPE_SMS、plus.messaging.TYPE_MMS、plus.messaging.TYPE_EMAIL。 ### 参数: - type : *( Number ) 必选 *消息类型 要创建的消息类型常量,可取plus.messaging.TYPE_SMS、plus.messaging.TYPE_MMS、plus.messaging.TYPE_EMAIL。 ### 返回值: [Message](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.Message) : Message对象 ### 平台支持: - Android - 2.2+ (支持): 支持 - iOS - 4.3+ (支持): 支持 ### 示例: ~~~ <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Messaging Example</title> <script type="text/javascript"> // 扩展API加载完毕后调用onPlusReady回调函数 document.addEventListener( "plusready", onPlusReady, false ); // 扩展API加载完毕,现在可以正常调用扩展API function onPlusReady() { } //短信 function smsTest(){ var msg = plus.messaging.createMessage(plus.messaging.TYPE_SMS); msg.to = ['18611497504', '15811140520']; msg.body = 'This is Pandora example test message'; plus.messaging.sendMessage( msg ); } </script> </head> <body> <input type='button' onclick='smsTest();' value='sms'/> </body> </html> ~~~ # [sendMessage]() 发送消息 ~~~ void plus.messaging.sendMessage( msg, successCB, errorCB ); ~~~ ### 说明: 发送消息,发送成功回调successCB函数,发送失败回调errorCB函数。 ### 参数: - msg: *( [Message](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.Message) ) 必选 * 要发送的消息对象 - successCB: *( [MessageSendSuccessCallback](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.MessageSendSuccessCallback) ) 可选 * 消息发送成功回调函数 - errorCB: *( [MessageErrorCallback](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.MessageErrorCallback) ) 可选 * 消息发送失败回调函数 ### 返回值: void : 无 ### 平台支持: - Android - 2.2+ (支持): 支持 - iOS - 4.3+ (支持): 支持 ### 示例: ~~~ <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Messaging Example</title> <script type="text/javascript"> // 扩展API加载完毕后调用onPlusReady回调函数 document.addEventListener( "plusready", onPlusReady, false ); // 扩展API加载完毕,现在可以正常调用扩展API function onPlusReady() { } //邮件 function mailTest(){ var msg = plus.messaging.createMessage(plus.messaging.TYPE_EMAIL); msg.to = ['test@163.com', 'test@173.com']; msg.cc = ['test@163.com', 'test@173.com']; msg.bcc = ['test@163.com', 'test@173.com']; msg.subject = '测试邮件'; msg.body = 'This is Pandora example test message'; plus.messaging.sendMessage( msg, function () { alert( "Send success!" ); }, function () { alert( "Send failed!" ); } ); } </script> </head> <body> <input type='button' onclick='mailTest();' value='Send Mail'/> </body> </html> ~~~ # [Message]() 消息对象 ### 属性: - [to](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.Message.to): 收件人信息 - [cc](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.Message.cc): 抄送人信息 - [bcc](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.Message.bcc): 暗送人信息 - [subject](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.Message.subject): 发送消息主题 - [body](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.Message.body): 发送消息内容 - [bodyType](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.Message.bodyType): 发送消息内容类型 - [silent](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.Message.silent): 是否采用静默方式发送消息 ### 方法: - [addAttachment](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.Message.addAttachment): 添加附件 # [to]() 收件人信息 ### 说明: DOMString[] 类型 可选属性 字符串数组类型,输入的地址收件人信息必须符合消息类型格式。 # [cc]() 抄送人信息 ### 说明: DOMString[] 类型 可选属性 字符串数组类型,仅发送邮件时有效,输入的地址收件人信息必须符合消息类型格式。 # [bcc]() 暗送人信息 ### 说明: DOMString[] 类型 可选属性 字符串数组类型,仅发送邮件时有效,输入的地址收件人信息必须符合消息类型格式。 # [subject]() 发送消息主题 ### 说明: DOMString 类型 可选属性 字符串类型,仅发送邮件时有效。 # [body]() 发送消息内容 ### 说明: DOMString 类型 可选属性 字符串类型,要发送的消息体内容,其格式必须与bodyType指定的一致。 # [bodyType]() 发送消息内容类型 ### 说明: [BodyType](http://www.dcloud.io/docs/api/zh_cn/messaging.shtml#plus.messaging.BodyType) 类型 可选属性 要发送消息体内容的类型,可取值"text"表示文本内容,"html"表示为html页面,默认值为"text"。 ### 平台支持: - iOS - 4.3+ (支持): 支持指定消息体内容类型,可支持html和text模式。 - Android - 2.2+ (不支持): 不支持指定消息体内容类型,仅支持text模式。 ### 示例: ~~~ <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Messaging Example</title> <script type="text/javascript"> // 扩展API加载完毕后调用onPlusReady回调函数 document.addEventListener( "plusready", onPlusReady, false ); // 扩展API加载完毕,现在可以正常调用扩展API function onPlusReady() { } // send mail function mailTest(){ var msg = plus.messaging.createMessage(plus.messaging.TYPE_SMS); msg.to = ['service@dcloud.io']; msg.bodyType = "text/html"; msg.body = '<html><body>hello world!</body></html>'; plus.messaging.sendMessage( msg ); } </script> </head> <body> <input type='button' onclick='mailTest();' value='Mail'/> </body> </html> ~~~ # [silent]() 是否采用静默方式发送消息 ### 说明: Boolean 类型 可选属性 布尔类型,可取值为true或false,true表示静默方式发送,不弹出界面;false表示非静默方式发送。默认采用非静默方式。 ### 平台支持: - iOS - 4.3+ (不支持): 不支持静默方式发送消息,将忽略此属性值。 - Android - 2.2+ (支持): 支持静默方式发送短信(彩信和邮件不支持),发送成功后不会保留在系统的已发送信箱中,默认采用非静默方式发送消息。 ### 示例: ~~~ <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Messaging Example</title> <script type="text/javascript"> // 扩展API加载完毕后调用onPlusReady回调函数 document.addEventListener( "plusready", onPlusReady, false ); // 扩展API加载完毕,现在可以正常调用扩展API function onPlusReady() { } // send SMS function smsTest(){ var msg = plus.messaging.createMessage(plus.messaging.TYPE_SMS); msg.to = ['10086', '10001']; msg.body = 'CXYE'; msg.silent = true; plus.messaging.sendMessage( msg ); } </script> </head> <body> <input type='button' onclick='smsTest();' value='SMS'/> </body> </html> ~~~ # [addAttachment]() 添加附件 ~~~ msg.addAttachment( url ); ~~~ ### 说明: 向消息中添加附件,仅邮件类型消息支持,其它类型消息不支持。 ### 参数: - url: *( DOMString ) 必选 *要添加的附件资源地址 附件资源必须是本地文件,支持相对路径及本地文件相对路径格式。 ### 返回值: void : 无 ### 示例: ~~~ <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/> <title>Messaging Example</title> <script type="text/javascript"> // 监听plusready事件 document.addEventListener( "plusready", function(){ // 扩展API加载完毕,现在可以正常调用扩展API },false); // send mail function mailTest(){ var msg = plus.messaging.createMessage(plus.messaging.TYPE_MAIL); msg.to = ['service@dcloud.io']; msg.body = 'This is an example mail'; msg.addAttachment("_www/a.doc"); plus.messaging.sendMessage( msg ); } </script> </head> <body> <input type='button' onclick='mailTest();' value='Mail'/> </body> </html> ~~~ # [BodyType]() 消息体内容类型 ### 说明: 用于设定消息的消息体内容。 # [MessageSendSuccessCallback]() 消息发送成功的回调函数 ~~~ void onSuccess() { // Send message success code. } ~~~ ### 参数: 无 ### 返回值: void : 无 # [MessageErrorCallback]() 消息发送失败的回调函数 ~~~ void onError( error ) { // Error code. } ~~~ ### 参数: - error: *( DOMException ) 必选 *失败信息 ### 返回值: void : 无