以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  钉钉接口如何调用sdk啊?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=139778)

--  作者:guosheng
--  发布时间:2019/8/21 13:36:00
--  钉钉接口如何调用sdk啊?
1、根据帮助,将dll文件复制到 安装目录C:\\foxtable\\Development,并已经引入了sdk 文件。
2、将sdk的参考代码转(获取access_token)换成了vb形式(http://converter.telerik.com/)。
3、在命令窗口输入代码,好像找不到定义的DefaultDingTalkClient(第一次接触sdk,不太懂调用过程,见谅啊)
    Dim client As DefaultDingTalkClient = New DefaultDingTalkClient("https://oapi.dingtalk.com/gettoken")
    Dim request As OapiGettokenRequest = New OapiGettokenRequest()
    request.setAppkey("dinge6v0djvckrs62dsg")
    request.setAppsecret("ooDh3PEoKhfregE9RObZhydY5GW2XlEu4hWqtPzN-uyD9irM7fnJY-ld2QbwoSXf")
    request.setHttpMethod("GET")
    Dim response As OapiGettokenResponse = client.execute(request)

4、参考的SDK请求示例(JAVA)
DefaultDingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/gettoken");
OapiGettokenRequest request = new OapiGettokenRequest();
request.setAppkey("appkey");
request.setAppsecret("appsecret");
request.setHttpMethod("GET");
OapiGettokenResponse response = client.execute(request);

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:topsdk.rar

此主题相关图片如下:qq截图20190821132459.jpg
按此在新窗口浏览图片

[此贴子已经被作者于2019/8/21 14:02:25编辑过]

--  作者:有点蓝
--  发布时间:2019/8/21 15:06:00
--  
需要使用完整的命名空间:DingTalk.Api.DefaultDingTalkClient

Dim client As DingTalk.Api.DefaultDingTalkClient= New DingTalk.Api.DefaultDingTalkClient("https://oapi.dingtalk.com/gettoken")

其它类型也一样,如果不知道完整命名空间是什么,到源码里找

--  作者:guosheng
--  发布时间:2019/8/21 15:51:00
--  
谢谢,测试成功了。
Dim client As DingTalk.Api.DefaultDingTalkClient = New DingTalk.Api.DefaultDingTalkClient("https://oapi.dingtalk.com/gettoken")
Dim request As DingTalk.api.request.OapiGettokenRequest = New DingTalk.Api.request.OapiGettokenRequest()
request.Appkey="dinge6v0djvckrs62dsg"
request.Appsecret="ooDh3PEoKhfregE9RObZhydY5GW2XlEu4hWqtPzN-uyD9irM7fnJY-ld2QbwoSXf"
request.setHttpMethod("GET")
Dim response As DingTalk.Api.Response.OapiGettokenResponse = client.execute(request)



[此贴子已经被作者于2019/8/22 10:07:00编辑过]

--  作者:guosheng
--  发布时间:2019/8/22 10:35:00
--  
没有接触过.net语言,老师帮看看绿色部分不知道改怎么改啊(dll文件及引用函数的源码文件,见附件)。谢谢
黄色部分没有报错
Dim client As DingTalk.Api.IDingTalkClient = New DingTalk.Api.DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/message/corpconversation/asyncsend_v2")
Dim request As DingTalk.Api.request.OapiMessageCorpconversationAsyncsendV2Request = New DingTalk.Api.request.OapiMessageCorpconversationAsyncsendV2Request()
request.UseridList="086511554136698996"
request.AgentId=269251352
request.ToAllUser=False

Dim msg As DingTalk.Api.request.OapiMessageCorpconversationAsyncsendV2Request.Msg = New DingTalk.Api.request.OapiMessageCorpconversationAsyncsendV2Request.Msg()
msg.Msgtype="text"
msg.setText(new OapiMessageCorpconversationAsyncsendV2Request.Text())
msg.getText().setContent("test123")
request.setMsg(msg)

Dim response As DingTalk.Api.response.OapiMessageCorpconversationAsyncsendV2Response = client.execute(request, "a198fe69bb653783a1cfe0aa154c7d00")

其中:sdk的java实例如下:

DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/message/corpconversation/asyncsend_v2"); OapiMessageCorpconversationAsyncsendV2Request request = new OapiMessageCorpconversationAsyncsendV2Request(); request.setUseridList("01376814877479"); request.setAgentId(153858650L); request.setToAllUser(false);

OapiMessageCorpconversationAsyncsendV2Request.Msg msg = new OapiMessageCorpconversationAsyncsendV2Request.Msg(); msg.setMsgtype("text"); msg.setText(new OapiMessageCorpconversationAsyncsendV2Request.Text()); msg.getText().setContent("test123"); request.setMsg(msg);

OapiMessageCorpconversationAsyncsendV2Response response = client.execute(request,accessToken);
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:desktop.rar



--  作者:有点蓝
--  发布时间:2019/8/22 10:39:00
--  
Foxtable使用的就是vb.net,请看sdk中的.net例子,而不是看java例子。

c#代码转vb.net参考:http://converter.telerik.com/

--  作者:guosheng
--  发布时间:2019/8/22 11:16:00
--  
目前钉钉没有提供sdk的.net实例,只提供java实例啊。
我把钉钉官方提供的java实例的代码贴到提供的代码转换网址,c#转换vb会报错啊。该怎么处理啊。谢谢

图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2019/8/22 11:33:01编辑过]

--  作者:有点蓝
--  发布时间:2019/8/22 11:36:00
--  
都不是一个妈的,当然无法转换啊。

官方肯定有.net的实例啊,这么大的接口,不提供.net的用法,还想不想混:https://ding-doc.dingtalk.com/doc#/faquestions/vzbp02

做接口开发,麻烦请完整看看人家的接口文档好不好

--  作者:guosheng
--  发布时间:2019/8/22 13:16:00
--  
钉钉就给了这一个.net的实例。 但是,针对具体的某个功能的sdk的调用,钉钉没有给出.net的实例(只给了java的实例)。所以绿色的阴影部分不知道改怎么调用啊(牵涉到sdk函数中内部方法的调用)。谢谢
IDingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/user/get"); OapiUserGetRequest req = new OapiUserGetRequest(); req.Userid = "userid1"; req.SetHttpMethod("GET"); OapiUserGetResponse rsp = client.Execute(req, accessToken);
[此贴子已经被作者于2019/8/22 13:16:03编辑过]

--  作者:有点蓝
--  发布时间:2019/8/22 13:50:00
--  
无语

SDK
JAVA版本     下载
PHP版本     下载
.NET版      下载
Python版       下载

--  作者:guosheng
--  发布时间:2019/8/22 14:17:00
--  
这个链接我下载过了。里面是dll文件 和  源码(也没有deamo实例,我问过钉钉官方了,针对每个应用他们提供sdk的调用实例,只提供java语言的,没提供别其他语言的),源码打开看了,定义的类和方法,但是还是搞不懂绿色阴影部分该怎么调用啊。图片点击可在新窗口打开查看
[此贴子已经被作者于2019/8/22 14:20:48编辑过]