前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Incoming call missed/rejected Reminder on Windows Mobile

Incoming call missed/rejected Reminder on Windows Mobile

作者头像
ShiJiong
发布2018-01-11 14:42:43
6930
发布2018-01-11 14:42:43
举报
文章被收录于专栏:施炯的IoT开发专栏

在IM软件上(QQ/MSN之类),人忙或者离开时,可以设置一定的信息或者回复一些消息,来告诉对方主人当前的状态。试想一下,如果老板组织开会,让我介绍最近研究的内容。正在兴致勃勃地讲解当中,突然来一个电话。这时,如果电话能够像IM软件那样,给对方一个提醒,类似于“我正在会议中,稍后回电”这样的消息,那样就不怕了。

codeplex上有一个开源项目SMSNotifier,可以在它的基础上,来做这方面的应用。下面讲讲实现这个功能所需的一些知识。

Microsoft.WindowsMobile.PocketOutlook

程序中所使用到的Contact、Appointment都来源于这个类库Microsoft.WindowsMobile.PocketOutlook。更多信息,可以参考MSDN上的链接: http://msdn.microsoft.com/en-us/library/microsoft.windowsmobile.pocketoutlook.aspx

Microsoft.WindowsMobile.Status

获取漏接电话记录、约会信息,可以通过这个类库。更多信息,可以参考MSDN上的链接: http://msdn.microsoft.com/en-us/library/microsoft.windowsmobile.status.aspx

System.Xml.Serialization

我们可以将配置文件以.xml文件的格式存放起来,更多信息请参考MSDN上的链接: http://msdn.microsoft.com/en-us/library/system.xml.serialization.aspx

实现时,主要就是在主窗体load时,将missedCalls_Changed这个函数添加到ChangeEventHandler中。missedCalls_Changed函数中处理发送短信给联系人,并且将这个漏接电话的事情作为一个新的Appointment,提示主人。

代码大家可以去SMSNotifier主页下载,这里讲讲如何利用WM6.1.4的模拟器和Cellular Emulator工具来测试。首先,打开Cellular Emulator,使其和我们使用的Device Emulator建立联系。具体方法可以参考我之前的文章“Ring Tone Manager on Windows Mobile”。运行程序,界面如下图1所示:

图1:程序运行界面图

    然后,在Cellular Emulator中给Device Emulator拨打电话7272022,如下图2所示:

图2:Cellular Emulator中给Device Emulator拨打电话

    在Device Emulator中拒接电话以后,我们可以发现,Cellular Emulator的SMS中,Device Emulator发过来的一条SMS,如下图3所示:

图3:SMS提示信息

    同时,在Device Emulator的Appointment目录中,发现一条信息,如下图4所示:

图4:Appointment提示信息

    其配置信息,是放在Device Emulator的ApplicationData目录中,其内容如下:

Code

<?xml version="1.0" encoding="utf-8" ?>

- <SMSsettings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">

<SendSMSToUnansweredCallers>true</SendSMSToUnansweredCallers>

<SendSMSOnlyWhenActiveAppointment>false</SendSMSOnlyWhenActiveAppointment>

<SendSMSOnlyWhenBusyAppointment>true</SendSMSOnlyWhenBusyAppointment>

<AppendNextFreeSlotMessage>true</AppendNextFreeSlotMessage>

<AddMissedCallInfoToCalendar>true</AddMissedCallInfoToCalendar>

<SMSMessageToSend>I am currently busy, will call you back.</SMSMessageToSend>

<FreeSlotTextFormat>According to my calendar I'll be free around 17:00.</FreeSlotTextFormat>

</SMSsettings>

  大家有兴趣可以试试!Good Luck!

参考文章:SMSNotifier

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2009-01-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
短信
腾讯云短信(Short Message Service,SMS)可为广大企业级用户提供稳定可靠,安全合规的短信触达服务。用户可快速接入,调用 API / SDK 或者通过控制台即可发送,支持发送验证码、通知类短信和营销短信。国内验证短信秒级触达,99%到达率;国际/港澳台短信覆盖全球200+国家/地区,全球多服务站点,稳定可靠。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档