Dialog_发送系统消息

接口说明

发送系统消息,此接口为有交互界面的接口

访问权限

默认权限(basic)即可调用。欲了解更多有关访问权限的知识,请参考接口访问权限说明

请求URL地址

支持格式

返回HTML页面

HTTP请求方式

GET

是否需要登录

True

调用示例

请求参数说明

api参数
参数是否必填说明
displayTRUEdialog弹出框的展示方式。
站内组件支持popup、iframe,连接网站支持popup方式,移动端请使用wap方式。
redirect_uriTRUE回调地址,也可以作为点击确认后的跳转地址(由need_redirect决定)。
need_redirectFALSE是否跳转到redirect_uri指定的地址,0/1-跳转/不跳转,默认为0不跳转。
0-不跳转,redirect_uri仅仅作为回调
1-跳转,回调参数作为参数加到redirect_uri以GET方式回调。如用户按取消,跳转前会在redirect_uri中追加fragment:#cancel=1 。
网站连接不进行跳转,这个字段不用填。
linktextTRUE系统消息里面的链接文字,不超过15个汉字。例如,去帮忙
linkTRUE系统消息里的链接地址,必须以http或https开头。
textTRUE发送系统消息所使用的文案,不超过60个汉字,否则会被截断。
该文案可以有{_USER_} {_USER_TA_}变量,解析时会被替换为当前用户名字和他/她。
例如,动态文案:{_USER_} 在做XX任务时遇到了强大的XX,快去帮帮{_USER_TA_}!
picurlFALSE发送系统消息所使用的图片地址,如果动态分享中需要发布图片,则此项必填。
图片尺寸为80×80,否则会被压缩/拉伸为80×80,只支持gif/jpg/png格式
app_idTRUE申请应用时获得的APPID(Display=wap时,无需填写
noheadFALSE是否显示发送者姓名

特别注意:
① 由于需要用户确认后才能完成操作,此接口无需access token
② 不同display参数示例及界面

popup:弹出新窗口

示例:

<a onclick="window.open('http://api.kaixin001.com/dialog/sysnews?display=popup&linktext=%E9%93%BE%E6%8E%A5%E5%95%8A&text=11111&link=http%3A%2F%2Fwww.baidu.com&picurl=http%3A%2F%2Fpic.kaixin008.com.cn%2Fpic%2Fapp%2F23%2F1%2F9000_230116_homeadnew-ad.gif&app_id=100012096&redirect_uri=http%3A%2F%2Fwww.vm142.kaixin009.com%2Fjianfeng%2Ftestapp_bak%2Fwelcome.php%3F&need_redirect=0','','width=561,height=351')" href="#">popup link</a> 

界面:

iframe:弹出浮层

使用iframe弹出浮层模式需要引用JS-SDK:

<script src="http://s.kaixin001.com.cn/js/openapp-8.js" language="JavaScript"></script>

示例:

<script>
function openSysNewsDlg()
{
	/*  参数说明:
		app_id		申请应用时获得的APPID
		display	dialog弹出框的展示方式(iframe--弹出层的方式 popup--新窗口方式)
		redirect_uri 	回调地址 
		linktext 	系统消息里面的链接文字,不超过15个汉字。例如,去帮忙
		link 		系统消息里的链接地址,必须以http或https开头。 
		text 		发送系统消息所使用的文案,不超过60个汉字,否则会被截断。该文案可以有{_USER_} {_USER_TA_}变量,解析时会被替换为当前用户名字和他/她。例如,动态文案:{_USER_} 在做XX任务时遇到了强大的XX,快去帮帮{_USER_TA_}!
		picurl 	发送系统消息所使用的图片地址,如果动态分享中需要发布图片,则此项必填。图片尺寸为80×80,否则会被压缩/拉伸为80×80
		cb 		js回调函数
	*/
        var p = {"app_id":<?=KX_APPID ?>,"display":"iframe","redirect_uri":"<?=KX_CALLBACK_URL ?>","linktext":"去帮忙","link":"http://www.kaixin001.com", "text":"{_USER_} 在做XX任务时遇到了强大的XX,快去帮帮{_USER_TA_}!"};
        p.cb = function(v){console.log(v);};//用户点取消时v.cancel==1
        KX.sysnews(p);
}
</script>
<input type="button" name="sysnews" value="发送系统消息" onclick="openSysNewsDlg();" />

界面:

WAP:无线网页模式

服务器会根据用户的UA判断返回什么样式的页面
示例:

http://api.kaixin001.com/dialog/sysnews.json?display=wap&link=http%3A%2F%2Fwww.kaixin009.com&linktext=%B0%A2%CB%B9%B6%D9%B7%A2%C9%FA%B4%F3%B7%F9&need_redirect=1&oauth_consumer_key=805189877519df96b9618975421473a6&oauth_nonce=4f0b371c910a59cc20a63706a484bc49&oauth_signature=k4rG5Tc%2BkhBxQ%2B1sagGx6av0fUU%3D&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1328771373&oauth_token=117290939_561ed39739b9c4114bd77bb4095efb&oauth_version=1.0&picurl=http%3A%2F%2Fpic1.kaixin008.com.cn%2Flogo%2F5%2F40%2F50_54037_1.jpg&redirect_uri=http%3A%2F%2Fwww.kaixin009.com&text=%B0%A2%CB%B9%B6%D9%B7%A2%C9%FA%B4%F3%B7%F9

界面: WAP2.0版

iphone版

返回结果示例

此接口返回HTML结果,具体界面可参考上面的图示。

如想获取用户操作结果,请查看下面的接口回调。

接口回调

用户操作完成后,开放平台通过redirect_uri指定的URL将以下参数回调给应用。

回调参数:

参数名说明
uid执行当前操作的用户UID
num接收系统消息或邀请用户的数量
fuids接收系统消息或邀请的用户的uid,以逗号隔开
ctime执行回调函数的时间戳
callbackkey用户操作的代码。具体的代码所代表含义请参见以下操作代码对照表。某些接口提供了可选的callbackkey参数的,表示该接口回调操作代码是可以自定义的
sig数字签名

操作代码对照表:

操作代码 说明
sysnews 系统消息
invite 邀请好友
newsfeed 好友动态

关于Dialog API接口回调,详细请参考接口回调说明

错误代码释义

相关接口

/sysnews/send 无交互界面的发送系统消息接口,第三方应用可以根据应用风格自定义界面,需用户授权后才可使用