关于我们

饿了么开放平台IM(即时消息)接入场景方案对接场景

发布时间:2025-06-09

 

个人零费用代理店+,日收入3000+,可兼职做

1、查询与更新店铺 IM 状态

调用 eleme.shop.im.getIMStatus 接口可以查询店铺的 IM 开关状态,可用于第三方系统中前端查询后展示对应的状态;

调用 eleme.shop.im.updateIMStatus 可以设置店铺的 IM 开启与关闭,可用与第三方系统中设置店铺 IM 状态;

2、查询长链

调用该接口前需要拿到长链 Token,这个和调用接口时公共参数中的 Token 是不一样的,不要混淆;

如果是使用 java SDK,长链 Token 可以直接用 IMTokenUtil.genToken 工具类生成,使用其他语言则可以按照如下规则生成(生成长链 Token 需要 4 个参数:Key、Secret、LocalMac(本机设备 mac 地址)、ProcessID(本机进程 ID):

对 Secret 进行 MD5 哈希;

将这 4 个参数依次用 # 进行拼接,也就是 Key#md5(Secret)#LocalMac#ProcessID;

将步骤 2 得到的字符串进行Base64编码即是 长链 Token。

然后调用 eleme.shop.im.getWssAddress 传入 token 与 routingKey,
会返回这种格式的长链地址:wss://app-api.shop.ele.me/openapi/websocket?appId=napos_openapi&token=Qk1lULw4UnhRaSNhOWI3YmQ2YTcxZjw4NmRmWkU5ZDY5ZmZlN2YxY2M2OCM5MC05Qy00QS1DRS00RS00NSMxMEY2

Example(PHP):

$key = "xxxx"; $Secret = "xxxxxxxx"; $MD5Secret = md5($Secret); $localMAC = "xxxx"; $ProcessID = "xxxx"; $Temp = $appkey."#".$MD5Secret."#".$localMAC."#".$ProcessID; $IMToken = base64_encode($Temp);

 

/template/Home/AllNew/PC/Static