动力通讯工作组

动力通信工作组致力于网络通信的开发工作,进行tcpip网络编程,采用unix平台socket系列函数, windows平台 vc++6.0 MFC ,采用ASyncSocket对象。目前有telnet,irc,msn, SocketProxy 等产品程序。

  IT博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  14 随笔 :: 14 文章 :: 111 评论 :: 0 Trackbacks

2019年7月16日 #

   Display Function List,Type = 90 , Byte = 0 .
    --- --- -----------------------------
    1   1 var {A2} value {A4}
    2   1 var {A2} value number {A5}
    3   1 var {A2} value datetime
    4   1 var {A2} add {A4}
    5   1 var {A2} add number {A5}
    6   1 var {A2} replace {A4} with {A6}
    7   1 var {A2} adjust length {A5} align {A7}
    8   1 var {A2} copy var {A5}
    9   1 var {A2} copy var {A5} after {A7} bytes length {A10}
    10   2 screen.set color red {A4} green {A6} blue {A8}
    11   2 screen.set mode {A3}
    12   2 screen.set font {A3} size {A5}
    13   2 screen.text at point {A4} {A5} string {A7}
    14   2 screen.line from point {A4} {A5} to point {A8} {A9}
    15   2 screen.rect from point {A4} {A5} to point {A8} {A9}
    16   2 screen.arc at point {A4} {A5} radius {A7} from {A9} to {A11}
    17   2 screen.image url {A3} from point {A6} {A7} to point {A10} {A11}
    18   2 screen.save to file {A4} from point {A7} {A8} to point {A11} {A12}
    19   2 screen.play midi {A3}
    20   2 screen.speak {A2}
    21   3 dns.get var {A3} host {A5}
    22   4 ping.ip {A2} ttl {A4} size {A6}
    23   5 arp.get var {A3} ip {A5}
    24   6 telnet.connect ip {A3} port {A5}
    25   6 telnet.recv expect {A3}
    26   6 telnet.recv for {A3} seconds
    27   6 telnet.set onrecv {A3} send {A5}
    28   6 telnet.set delay {A3} ms after per byte send
    29   6 telnet.send {A2}
    30   6 telnet.send text
    31   6 telnet.close
    32   7 text.add {A2}
    33   7 text.add from file {A4}
    34   7 text.headpointer move to head
    35   7 text.headpointer move to tail
    36   7 text.headpointer move to {A4} byte
    37   7 text.headpointer move forward {A4} bytes
    38   7 text.headpointer move forward after {A5}
    39   7 text.tailpointer move to head
    40   7 text.tailpointer move to tail
    41   7 text.tailpointer move to {A4} byte
    42   7 text.tailpointer move backward {A4} bytes
    43   7 text.tailpointer move backward before {A5}
    44   7 text.replace {A2} with {A4}
    45   7 text.save to file {A4}
    46   7 text.save append to file {A5}
    47   7 text.get var {A3} after {A5} bytes length {A8}
    48   7 text.get var {A3} between {A5} and {A7}
    49   7 text.get var {A3} after {A5} length {A7}
    50   7 text.get var {A3} word number {A6}
    51   7 text.line get all words
    52   7 text.line get all words between {A6} and {A8} separated by {A11}
    53   7 text.delete from headpointer
    54   7 text.delete from {A3} byte
    55   7 text.delete from tailpointer
    56   8 ssh.connect ip {A3} port {A5} username {A7} password {A9}
    57   8 ssh.set onrecv {A3} send {A5}
    58   8 ssh.recv expect {A3}
    59   8 ssh.recv for {A3} seconds
    60   8 ssh.send {A2}
    61   8 ssh.close
    62   9 snmp.open version {A3} ip {A5} port {A7} password {A9}
    63   9 snmp.get var {A3} oid {A5}
    64   9 snmp.getnext oid {A3}
    65  10 tcp.server listen port {A4}
    66  10 tcp.connect ip {A3} port {A5}
    67  10 tcp.send {A2}
    68  10 tcp.send text
    69  10 tcp.recv {A2}
    70  10 tcp.recv expect {A3}
    71  10 tcp.recv for {A3} bytes
    72  10 tcp.recv for {A3} seconds
    73  10 tcp.close
    74  11 udp.server listen port {A4}
    75  11 udp.client connect ip {A4} port {A6}
    76  11 udp.send {A2}
    77  11 udp.send text
    78  11 udp.recv {A2} packets
    79  11 udp.recv {A2} seconds
    80  11 udp.close
    81  12 if.var {A2} > {A4}
    82  12 if.var {A2} >= {A4}
    83  12 if.var {A2} < {A4}
    84  12 if.var {A2} <= {A4}
    85  12 if.var {A2} == {A4}
    86  12 if.var {A2} <> {A4}
    87  12 if.var {A2} in {A4}
    88  12 if.var {A2} not in {A5}
    89  12 if.var {A2} contain {A4}
    90  12 if.var {A2} not contain {A5}
    91  12 if.text contain {A3}
    92  12 if.text not contain {A4}
    93  12 if.end
    94  13 loop.begin
    95  13 loop.next
    96  13 loop.exit
    97  13 loop.end
    98  14 smtp.server {A2} port {A4} username {A6} password {A8}
    99  14 smtp.subject {A2} body {A4}
    100  14 smtp.add attachment {A3}
    101  14 smtp.send to {A3}
    102  15 macro.call {A2}
    103  15 macro.begin {A2}
    104  15 macro.return
    105  15 macro.end
    106  16 excel.open {A2} sheet {A4}
    107  16 excel.cell {A2} value {A4}
    108  16 excel.get var {A3} cell {A5}
    109  16 excel.close
    110  17 mysql.open ip {A3} port {A5} user {A7} password {A9} database {A11}
    111  17 mysql.exec {A2}
    112  17 mysql.log {A2}
    113  18 sqlite.open {A2}
    114  18 sqlite.exec {A2}
    115  18 sqlite.log {A2}
    116  18 sqlite.save var {A3}
    117  18 sqlite.save var name prefix {A5}
    118  18 sqlite.load var {A3}
    119  18 sqlite.load var name prefix {A5}
    120  18 sqlite.close
    121  19 run.end
    122  19 run.sleep {A2} seconds
    123  19 run.set loglevel {A3}
    124  19 run.set onerror {A3}
    125  19 run.set run.maxtime {A3} seconds
    126  19 run.set step.timeout {A3} seconds
    127  19 run.nms {A2}
    128  20 sys.command {A2}
    129  20 sys.execute open {A3}
    130  20 sys.execute send {A3}
    131  20 sys.execute recv expect {A4}
    132  20 sys.execute recv for {A4} seconds
    133  20 sys.execute close
    134  21 web.open {A2}
    135  21 web.add header {A3} value {A5}
    136  21 web.add var {A3}
    137  21 web.get
    138  21 web.post
    139  21 web.close
posted @ 2019-07-16 09:57 动力通讯工作组 阅读(134) | 评论 (0)编辑 收藏

     摘要: 第19章、 Run   Run用来设置脚本执行的控制参数,例如日志级别、运行时间、错误处理模式、调用其他脚本等。1、run语句分析run.end脚本执行结束,如果是后台无界面(hide模式)运行,进程退出。run.sleep {2} seconds脚本执行暂停2秒run.set loglevel {debug}  设置脚本执行时的日志级别,有debug,in...  阅读全文
posted @ 2019-07-16 09:56 动力通讯工作组 阅读(137) | 评论 (0)编辑 收藏

     摘要: 第16章、web  web(World Wide Web)即全球广域网,也称为万维网,它是一种基于超文本和HTTP协议的一种网络服务,部分网络设备支持基于web的远程管理。1、web语句分析web.open {https://github.com/snml2019/snml/blob/master/snmlVer.txt}web.get以上两条语句用get方式获取web文件ht...  阅读全文
posted @ 2019-07-16 09:55 动力通讯工作组 阅读(94) | 评论 (0)编辑 收藏

     摘要: 第6章、判断语句(if)  判断语句有if.var、if.text和if.end构成程序块,当if.var、if.text语句为真时,执行if块内的语句;当if.var、if.text语句为假时,不执行if块内的语句。格式如下:if.var   if块内的语句1  if块内的语句2  …̷...  阅读全文
posted @ 2019-07-16 09:46 动力通讯工作组 阅读(137) | 评论 (0)编辑 收藏

     摘要: 第4章、telnet  telnet协议是远程登录服务的标准协议和主要方式。它为用户提供了在本地计算机上登录远程主机、网络设备开展工作的能力。1、示例脚本[C:\snml2019\telnet\telnet_nms1.txt],查看文本区内容C:\snml2019\telnet\telnet_nms1.txt001var {v_time} value datetime002sc...  阅读全文
posted @ 2019-07-16 09:36 动力通讯工作组 阅读(144) | 评论 (0)编辑 收藏

     摘要: 手册最新版:https://snml2019.github.io/snml/snmldoc8.html第3章、snmp工具、snml语言执行概述  snmp( Simple Network Management Protocol )简单网络管理协议是可以管理不同厂家网络设备的简单通讯协议。1、网络设备开启snmp功能Cisco设备配置snmp参考文档: https:/...  阅读全文
posted @ 2019-07-16 09:35 动力通讯工作组 阅读(191) | 评论 (0)编辑 收藏

     摘要: 第2章、屏幕(screen)文本、绘图、声音1、文本显示screen.text at point {10} {30} string {myvar1 = [~myvar1~]} 在屏幕的坐标点(10,30)处显示字符串“myvar1 = [~myvar1~]”,在语句解释执行时,会进行变量值的替换,“~myvar1~”表示需替换变量myvar...  阅读全文
posted @ 2019-07-16 09:33 动力通讯工作组 阅读(129) | 评论 (0)编辑 收藏

     摘要:   手册最新版:https://snml2019.github.io/snml/snmldoc8.html    手机扫描二维码打开最新手册  打包下载:https://snml2019.github.io/snml/snml2019.zip第1章、变量(var)1、直接赋值语句var {myvar1} value {...  阅读全文
posted @ 2019-07-16 09:31 动力通讯工作组 阅读(170) | 评论 (0)编辑 收藏

2019年7月9日 #

简单网络管理语言是一种类自然语言的脚本语言,它采用snmp、telnet、ping、dns、arp、ssh、tcp、udp、web等协议访问网络设备,内置smtp协议用于告警等邮件的发送,支持excel、mysql、sqlite等3种方式进行网管数据的存取。
pasting
  最新版本: snml8.13(ladybird)
  项目托管地址:https://github.com/snml2019/snml
  打包下载:https://snml2019.github.io/snml/snml2019.zip
  
  手机扫描二维码打开项目

  本手册编辑日期:20190701
  技术支持邮箱1:snml2019@protonmail.com
  技术支持邮箱2:snml2019@hotmail.com
  简单网络管理语言(snml)支持CLI(命令行接口)和SNMP(简单网络管理协议)两种方式自动化的进行网络设备配置和管理。CLI 是基于telnet、ssh的人机交互界面,用于设备的参数配置和状态的查看。SNMP 是基于通讯协议的管理工具,实现网络设备参数的自动化监控和远程配置。
  网络设备的配置和管理的新技术是SDN(Software Defined Netrork)。软件定义网络是2006年斯坦福大学提出的网络设备分层编程控制系统,全新的网络设备自动化配置和管理体系。
  手册最新版:https://snml2019.github.io/snml/snmldoc8.html
  
  手机扫描二维码打开最新手册

  打包下载:https://snml2019.github.io/snml/snml2019.zip

目 录



第1章、变量(var)
1、直接赋值语句
2、变量复制语句
3、变量编辑语句
4、示例脚本[C:\snml2019\var\var_nms1.txt]
第2章、屏幕(screen)文本、绘图、声音
1、文本显示
2、绘图
3、声音
4、示例脚本[C:\snml2019\screen\screen_nms1.txt]
第3章、snmp工具、snml语言执行概述
1、网络设备开启snmp功能
2、示例脚本[C:\snml2019\snmp\snmp_1.txt]
3、解释器[C:\snml2019\snml.exe]逐行解析执行脚本
4、示例脚本[C:\snml2019\snmp\snmp_1.txt]语法解析
第4章、telnet
1、示例脚本[C:\snml2019\telnet\telnet_nms1.txt],查看文本区内容
2、示例脚本分析
3、脚本执行后查看变量区内容
第5章、文本区(text)
1、文本区增加内容
2、使用文本区头指针、尾指针选定文本区内容
3、文本区选定内容的编辑、存储、变量提取
4、文本区删除部分内容
5、示例脚本[C:\snml2019\text\text_nms1.txt]
第6章、判断语句(if)
1、判断变量的值(if.var)
2、判断文本区选定内容(if.text)
第7章、循环语句(loop)
第8章、dns
1、dns语句分析
2、示例脚本[C:\snml2019\ping\ping_nms1.txt]中的dns语句部分
第9章、ping
1、ping语句分析
2、示例脚本[C:\snml2019\ping\ping_nms1.txt
第10章、arp
1、arp语句分析
2、示例脚本[C:\snml2019\arp\arp_nms1.txt]
第11章、excel
1、excel语句分析
2、示例脚本[C:\snml2019\excel\excel_nms1.txt]
第12章、smtp(e-mail)
1、smtp语句分析
2、示例脚本[C:\snml2019\smtp\smtp_nms1.txt]
第13章、tcp
1、tcp语句分析
2、示例脚本[C:\snml2019\tcp\tcp_nms1.txt]
第14章、udp
1、udp语句分析
2、示例脚本[C:\snml2019\udp\udp_nms1.txt]
第15章、ssh
1、ssh语句分析
2、示例脚本[C:\snml2019\ssh\ssh_nms1.txt]
3、ssh注册脚本[C:\snml2019\ssh\sshreg_nms.txt]
第16章、web
1、web语句分析
2、示例脚本[C:\snml2019\web\web_nms1.txt]
第17章、mysql数据库
1、mysql语句分析
2、示例脚本[C:\snml2019\mysql\mysql_nms1.txt]
第18章、sqlite数据库
1、sqlite语句分析
2、示例脚本[C:\snml2019\sqlite\sqlite_nms1.txt]
第19章、 Run(脚本执行控制)
1、run语句分析
2、示例脚本[C:\snml2019\run\run_nms1.txt]
第20章、 sys(执行本机命令)
1、sys语句分析
2、示例脚本[C:\snml2019\sys\sys_nms1.txt]
第21章、 macro
1、macro语句分析
2、示例脚本[C:\snml2019\macro\macro_nms1.txt]
附录1、全部语句句法格式
posted @ 2019-07-09 09:43 动力通讯工作组 阅读(196) | 评论 (0)编辑 收藏

2005年12月26日 #

用MFC,ASyncSocket编写的MSN Messenger模仿程序,实现了用户登陆,自动接受好友加入,接受和发送聊天信息等功能. 更有通讯日志和程序运行日志,可以很好的理解和分析MSN Messenger的协议.

程序运行画面如下, 可以修改源代码实现自己的独特功能.

源代码的zip压缩包  http://www.cnitblog.com/Files/tcpip2005/SimMsn_src.zip
可执行程序的zip压缩包 http://www.cnitblog.com/Files/tcpip2005/SimMsn.zip

全文: http://www.cnitblog.com/tcpip2005/archive/2005/06/02/236.html

模拟msn源代码-(与sb服务器通信,聊天session) (与NS服务器通信) ( 06-02 10:00)

msn.jpg

posted @ 2005-12-26 09:15 动力通讯工作组 阅读(694) | 评论 (0)编辑 收藏

仅列出标题  下一页