Skip to content

Instantly share code, notes, and snippets.

@suntong
Last active August 2, 2021 20:50
Show Gist options
  • Save suntong/663213ba1d9edd90a422d904d60cf288 to your computer and use it in GitHub Desktop.
Save suntong/663213ba1d9edd90a422d904d60cf288 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><!-- Generated by graphviz version 2.40.1 (20161225.0304)
--><!-- Title: gocallvis Pages: 1 --><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1732pt" height="1731pt" viewBox="0.00 0.00 1732.07 1730.80">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(0 1730.8)">
<title>gocallvis</title>
<polygon fill="#d3d3d3" stroke="transparent" points="0,0 0,-1730.8 1732.0692,-1730.8 1732.0692,0 0,0"/>
<text text-anchor="middle" x="106.0238" y="-8.2" font-family="Arial" font-size="14.00" fill="#000000">github.com/suntong/owc-insight</text>
<g id="clust1" class="cluster">
<title>cluster_focus</title>
<polygon fill="#ffffff" stroke="#000000" stroke-width=".5" points="8,-32.8 8,-1722.8 1724.0692,-1722.8 1724.0692,-32.8 8,-32.8"/>
</g>
<g id="clust2" class="cluster">
<title>cluster_github.com/eatMoreApple/openwechat</title>
<g id="a_clust2"><a xlink:title="package: github.com/eatMoreApple/openwechat">
<polygon fill="#ffffff" stroke="#000000" stroke-width=".8" points="16,-40.8 16,-1714.8 1716.0692,-1714.8 1716.0692,-40.8 16,-40.8"/>
<text text-anchor="middle" x="866.0346" y="-1696.4" font-family="Arial" font-size="16.00" fill="#000000">openwechat</text>
</a>
</g>
</g>
<g id="clust3" class="cluster">
<title>cluster_*github.com/eatMoreApple/openwechat.Caller</title>
<g id="a_clust3"><a xlink:title="type: *github.com/eatMoreApple/openwechat.Caller">
<polygon fill="#ffffff" stroke="#000000" stroke-width=".8" points="24,-48.8 24,-1679.8 1708.0692,-1679.8 1708.0692,-48.8 24,-48.8"/>
<text text-anchor="middle" x="866.0346" y="-1661.4" font-family="Arial" font-size="16.00" fill="#000000">openwechat</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Bot).handleLogin -->
<g id="node1" class="node">
<title>(*github.com/eatMoreApple/openwechat.Bot).handleLogin</title>
<g id="a_node1"><a xlink:title="(*github.com/eatMoreApple/openwechat.Bot).handleLogin | defined in bot.go:157&#10;at bot.go:184: calling [(*github.com/eatMoreApple/openwechat.Bot).webInit]&#10;at bot.go:179: calling [(*github.com/eatMoreApple/openwechat.Bot).DumpHotReloadStorage]&#10;at bot.go:159: calling [(*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo]&#10;at bot.go:171: calling [github.com/eatMoreApple/openwechat.GetRandomDeviceId]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width=".5" cx="127.0792" cy="-1565.8" rx="44.5548" ry="18"/>
<text text-anchor="middle" x="127.0792" y="-1561.6" font-family="Verdana" font-size="14.00" fill="#000000">handleLogin</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo -->
<g id="node10" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo</title>
<g id="a_node10"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo | defined in caller.go:73&#10;at caller.go:84: calling [(*github.com/eatMoreApple/openwechat.Client).GetLoginInfo]&#10;at caller.go:96: calling [github.com/eatMoreApple/openwechat.scanXml]&#10;at caller.go:99: calling [(github.com/eatMoreApple/openwechat.LoginInfo).Ok]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="398.1665" cy="-1565.8" rx="48.0799" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-1561.6" font-family="Verdana" font-size="14.00" fill="#000000">GetLoginInfo</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Bot).handleLogin&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo -->
<g id="edge45" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Bot).handleLogin-&gt;(*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo</title>
<g id="a_edge45"><a xlink:title="at bot.go:159: calling [(*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo]">
<path fill="none" stroke="#000000" d="M171.8437,-1565.8C217.709,-1565.8 289.2394,-1565.8 339.5839,-1565.8"/>
<polygon fill="#000000" stroke="#000000" points="339.6722,-1569.3001 349.6722,-1565.8 339.6722,-1562.3001 339.6722,-1569.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Bot).webInit -->
<g id="node2" class="node">
<title>(*github.com/eatMoreApple/openwechat.Bot).webInit</title>
<g id="a_node2"><a xlink:title="(*github.com/eatMoreApple/openwechat.Bot).webInit | defined in bot.go:188&#10;at bot.go:202: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify]&#10;at bot.go:192: calling [(*github.com/eatMoreApple/openwechat.Caller).WebInit]&#10;at bot.go:206: calling [(*github.com/eatMoreApple/openwechat.Bot).webInit$1]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width=".5" cx="398.1665" cy="-1347.8" rx="28.8975" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-1343.6" font-family="Verdana" font-size="14.00" fill="#000000">webInit</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebInit -->
<g id="node11" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebInit</title>
<g id="a_node11"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).WebInit | defined in caller.go:106&#10;at caller.go:107: calling [(*github.com/eatMoreApple/openwechat.Client).WebInit]&#10;at caller.go:113: calling [github.com/eatMoreApple/openwechat.scanJson]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="839.6005" cy="-1382.8" rx="30.4103" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-1378.6" font-family="Verdana" font-size="14.00" fill="#000000">WebInit</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Bot).webInit&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebInit -->
<g id="edge15" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Bot).webInit-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebInit</title>
<g id="a_edge15"><a xlink:title="at bot.go:192: calling [(*github.com/eatMoreApple/openwechat.Caller).WebInit]">
<path fill="none" stroke="#000000" d="M426.7901,-1350.0695C502.9802,-1356.1104 710.9199,-1372.5973 799.1521,-1379.593"/>
<polygon fill="#000000" stroke="#000000" points="799.0564,-1383.0963 809.3017,-1380.3977 799.6097,-1376.1182 799.0564,-1383.0963"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify -->
<g id="node12" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify</title>
<g id="a_node12"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify | defined in caller.go:120&#10;at caller.go:130: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]&#10;at caller.go:121: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxStatusNotify]&#10;at caller.go:127: calling [github.com/eatMoreApple/openwechat.scanJson]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="839.6005" cy="-1321.8" rx="70.803" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-1317.6" font-family="Verdana" font-size="14.00" fill="#000000">WebWxStatusNotify</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Bot).webInit&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify -->
<g id="edge7" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Bot).webInit-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify</title>
<g id="a_edge7"><a xlink:title="at bot.go:202: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify]">
<path fill="none" stroke="#000000" d="M426.7901,-1346.1141C493.2857,-1342.1976 660.1362,-1332.3703 760.1757,-1326.478"/>
<polygon fill="#000000" stroke="#000000" points="760.4627,-1329.9673 770.2396,-1325.8853 760.0511,-1322.9794 760.4627,-1329.9673"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Bot).asyncCall -->
<g id="node3" class="node">
<title>(*github.com/eatMoreApple/openwechat.Bot).asyncCall</title>
<g id="a_node3"><a xlink:title="(*github.com/eatMoreApple/openwechat.Bot).asyncCall | defined in bot.go:219&#10;at bot.go:231: calling [(*github.com/eatMoreApple/openwechat.SyncCheckResponse).Success]&#10;at bot.go:235: calling [(*github.com/eatMoreApple/openwechat.SyncCheckResponse).NorMal]&#10;at bot.go:236: calling [(*github.com/eatMoreApple/openwechat.Bot).getNewWechatMessage]&#10;at bot.go:226: calling [(*github.com/eatMoreApple/openwechat.Caller).SyncCheck]&#10;at bot.go:224: calling [(*github.com/eatMoreApple/openwechat.Bot).Alive]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width=".5" cx="127.0792" cy="-1199.8" rx="35.9667" ry="18"/>
<text text-anchor="middle" x="127.0792" y="-1195.6" font-family="Verdana" font-size="14.00" fill="#000000">asyncCall</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).SyncCheck -->
<g id="node13" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).SyncCheck</title>
<g id="a_node13"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).SyncCheck | defined in caller.go:137&#10;at caller.go:138: calling [(*github.com/eatMoreApple/openwechat.Client).SyncCheck]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="398.1665" cy="-1199.8" rx="40.6402" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-1195.6" font-family="Verdana" font-size="14.00" fill="#000000">SyncCheck</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Bot).asyncCall&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).SyncCheck -->
<g id="edge42" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Bot).asyncCall-&gt;(*github.com/eatMoreApple/openwechat.Caller).SyncCheck</title>
<g id="a_edge42"><a xlink:title="at bot.go:226: calling [(*github.com/eatMoreApple/openwechat.Caller).SyncCheck]">
<path fill="none" stroke="#000000" d="M163.0775,-1199.8C210.3359,-1199.8 293.5755,-1199.8 347.2683,-1199.8"/>
<polygon fill="#000000" stroke="#000000" points="347.5935,-1203.3001 357.5934,-1199.8 347.5934,-1196.3001 347.5935,-1203.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Bot).getNewWechatMessage -->
<g id="node4" class="node">
<title>(*github.com/eatMoreApple/openwechat.Bot).getNewWechatMessage</title>
<g id="a_node4"><a xlink:title="(*github.com/eatMoreApple/openwechat.Bot).getNewWechatMessage | defined in bot.go:253&#10;at bot.go:254: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSync]&#10;at bot.go:263: calling [(*github.com/eatMoreApple/openwechat.Message).init]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width=".5" cx="398.1665" cy="-1443.8" rx="80.979" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-1439.6" font-family="Verdana" font-size="14.00" fill="#000000">getNewWechatMessage</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSync -->
<g id="node14" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSync</title>
<g id="a_node14"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).WebWxSync | defined in caller.go:192&#10;at caller.go:193: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSync]&#10;at caller.go:199: calling [github.com/eatMoreApple/openwechat.scanJson]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="839.6005" cy="-1443.8" rx="46.9405" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-1439.6" font-family="Verdana" font-size="14.00" fill="#000000">WebWxSync</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Bot).getNewWechatMessage&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSync -->
<g id="edge38" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Bot).getNewWechatMessage-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSync</title>
<g id="a_edge38"><a xlink:title="at bot.go:254: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSync]">
<path fill="none" stroke="#000000" d="M479.3894,-1443.8C567.4458,-1443.8 705.6961,-1443.8 782.8004,-1443.8"/>
<polygon fill="#000000" stroke="#000000" points="782.806,-1447.3001 792.806,-1443.8 782.8059,-1440.3001 782.806,-1447.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Bot).Logout -->
<g id="node5" class="node">
<title>(*github.com/eatMoreApple/openwechat.Bot).Logout</title>
<g id="a_node5"><a xlink:title="(*github.com/eatMoreApple/openwechat.Bot).Logout | defined in bot.go:141&#10;at bot.go:142: calling [(*github.com/eatMoreApple/openwechat.Bot).Alive]&#10;at bot.go:147: calling [(*github.com/eatMoreApple/openwechat.Caller).Logout]&#10;at bot.go:150: calling [(*github.com/eatMoreApple/openwechat.Bot).stopAsyncCALL]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="127.0792" cy="-794.8" rx="27.2736" ry="18"/>
<text text-anchor="middle" x="127.0792" y="-790.6" font-family="Verdana" font-size="14.00" fill="#000000">Logout</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).Logout -->
<g id="node16" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).Logout</title>
<g id="a_node16"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).Logout | defined in caller.go:280&#10;at caller.go:281: calling [(*github.com/eatMoreApple/openwechat.Client).Logout]&#10;at caller.go:285: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="398.1665" cy="-806.8" rx="27.2736" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-802.6" font-family="Verdana" font-size="14.00" fill="#000000">Logout</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Bot).Logout&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).Logout -->
<g id="edge25" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Bot).Logout-&gt;(*github.com/eatMoreApple/openwechat.Caller).Logout</title>
<g id="a_edge25"><a xlink:title="at bot.go:147: calling [(*github.com/eatMoreApple/openwechat.Caller).Logout]">
<path fill="none" stroke="#000000" d="M154.5643,-796.0167C203.3763,-798.1774 305.2438,-802.6867 360.5269,-805.1338"/>
<polygon fill="#000000" stroke="#000000" points="360.4636,-808.6344 370.6086,-805.5801 360.7732,-801.6412 360.4636,-808.6344"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Bot).Login -->
<g id="node6" class="node">
<title>(*github.com/eatMoreApple/openwechat.Bot).Login</title>
<g id="a_node6"><a xlink:title="(*github.com/eatMoreApple/openwechat.Bot).Login | defined in bot.go:105&#10;at bot.go:116: calling [(*github.com/eatMoreApple/openwechat.Caller).CheckLogin]&#10;at bot.go:126: calling [(*github.com/eatMoreApple/openwechat.Bot).handleLogin]&#10;at bot.go:106: calling [(*github.com/eatMoreApple/openwechat.Caller).GetLoginUUID]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="127.0792" cy="-1103.8" rx="27" ry="18"/>
<text text-anchor="middle" x="127.0792" y="-1099.6" font-family="Verdana" font-size="14.00" fill="#000000">Login</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).GetLoginUUID -->
<g id="node19" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).GetLoginUUID</title>
<g id="a_node19"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).GetLoginUUID | defined in caller.go:29&#10;at caller.go:30: calling [(*github.com/eatMoreApple/openwechat.Client).GetLoginUUID]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="398.1665" cy="-1077.8" rx="54.7628" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-1073.6" font-family="Verdana" font-size="14.00" fill="#000000">GetLoginUUID</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Bot).Login&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).GetLoginUUID -->
<g id="edge51" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Bot).Login-&gt;(*github.com/eatMoreApple/openwechat.Caller).GetLoginUUID</title>
<g id="a_edge51"><a xlink:title="at bot.go:106: calling [(*github.com/eatMoreApple/openwechat.Caller).GetLoginUUID]">
<path fill="none" stroke="#000000" d="M154.0632,-1101.212C196.0702,-1097.1831 278.2237,-1089.3037 335.5677,-1083.8039"/>
<polygon fill="#000000" stroke="#000000" points="335.9943,-1087.2791 345.6144,-1082.8403 335.3259,-1080.3111 335.9943,-1087.2791"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).CheckLogin -->
<g id="node20" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).CheckLogin</title>
<g id="a_node20"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).CheckLogin | defined in caller.go:51&#10;at caller.go:52: calling [(*github.com/eatMoreApple/openwechat.Client).CheckLogin]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="398.1665" cy="-1138.8" rx="43.7982" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-1134.6" font-family="Verdana" font-size="14.00" fill="#000000">CheckLogin</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Bot).Login&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).CheckLogin -->
<g id="edge3" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Bot).Login-&gt;(*github.com/eatMoreApple/openwechat.Caller).CheckLogin</title>
<g id="a_edge3"><a xlink:title="at bot.go:116: calling [(*github.com/eatMoreApple/openwechat.Caller).CheckLogin]">
<path fill="none" stroke="#000000" d="M154.0632,-1107.2839C198.7865,-1113.0581 289.0159,-1124.7076 346.3628,-1132.1116"/>
<polygon fill="#000000" stroke="#000000" points="345.954,-1135.5878 356.3198,-1133.3972 346.8504,-1128.6454 345.954,-1135.5878"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).UploadMedia -->
<g id="node7" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).UploadMedia</title>
<g id="a_node7"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).UploadMedia | defined in caller.go:220&#10;at caller.go:231: calling [github.com/eatMoreApple/openwechat.scanJson]&#10;at caller.go:234: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]&#10;at caller.go:222: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="839.6005" cy="-833.8" rx="48.0799" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-829.6" font-family="Verdana" font-size="14.00" fill="#000000">UploadMedia</text>
</a>
</g>
</g>
<!-- (github.com/eatMoreApple/openwechat.BaseResponse).Ok -->
<g id="node45" class="node">
<title>(github.com/eatMoreApple/openwechat.BaseResponse).Ok</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="1439.0478" cy="-1101.8" rx="192.7474" ry="18"/>
<text text-anchor="middle" x="1439.0478" y="-1097.6" font-family="Verdana" font-size="14.00" fill="#000000">(github.com/eatMoreApple/openwechat.BaseResponse).Ok</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).UploadMedia&#45;&gt;(github.com/eatMoreApple/openwechat.BaseResponse).Ok -->
<g id="edge47" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).UploadMedia-&gt;(github.com/eatMoreApple/openwechat.BaseResponse).Ok</title>
<g id="a_edge47"><a xlink:title="at caller.go:234: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]">
<path fill="none" stroke="#000000" d="M883.6363,-826.2547C940.7818,-819.047 1040.7614,-815.5642 1105.0264,-864.8 1174.5369,-918.0546 1110.9182,-991.5484 1178.0264,-1047.8 1202.1874,-1068.0523 1231.9745,-1081.3497 1262.6822,-1089.9598"/>
<polygon fill="#000000" stroke="#000000" points="1262.1169,-1093.4302 1272.6786,-1092.5934 1263.9003,-1086.6612 1262.1169,-1093.4302"/>
</a>
</g>
</g>
<!-- github.com/eatMoreApple/openwechat.scanJson -->
<g id="node46" class="node">
<title>github.com/eatMoreApple/openwechat.scanJson</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="1439.0478" cy="-1264.8" rx="158.2426" ry="18"/>
<text text-anchor="middle" x="1439.0478" y="-1260.6" font-family="Verdana" font-size="14.00" fill="#000000">github.com/eatMoreApple/openwechat.scanJson</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).UploadMedia&#45;&gt;github.com/eatMoreApple/openwechat.scanJson -->
<g id="edge14" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).UploadMedia-&gt;github.com/eatMoreApple/openwechat.scanJson</title>
<g id="a_edge14"><a xlink:title="at caller.go:231: calling [github.com/eatMoreApple/openwechat.scanJson]">
<path fill="none" stroke="#000000" d="M881.6183,-825.0679C939.7505,-815.6532 1044.3852,-808.7433 1105.0264,-864.8 1166.5676,-921.6888 1116.433,-1177.9677 1178.0264,-1234.8 1219.3626,-1272.9409 1281.4337,-1281.3001 1334.676,-1279.7182"/>
<polygon fill="#000000" stroke="#000000" points="1335.0069,-1283.2076 1344.8523,-1279.2938 1334.7151,-1276.2137 1335.0069,-1283.2076"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk -->
<g id="node71" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="1439.0478" cy="-833.8" rx="261.0428" ry="18"/>
<text text-anchor="middle" x="1439.0478" y="-829.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).UploadMedia&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk -->
<g id="edge69" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).UploadMedia-&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk</title>
<g id="a_edge69"><a xlink:title="at caller.go:222: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk]">
<path fill="none" stroke="#000000" d="M887.6425,-833.8C949.209,-833.8 1060.776,-833.8 1167.5283,-833.8"/>
<polygon fill="#000000" stroke="#000000" points="1167.8423,-837.3001 1177.8423,-833.8 1167.8423,-830.3001 1167.8423,-837.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg -->
<g id="node8" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg</title>
<g id="a_node8"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg | defined in caller.go:244&#10;at caller.go:254: calling [github.com/eatMoreApple/openwechat.getSuccessSentMessage]&#10;at caller.go:246: calling [(*github.com/eatMoreApple/openwechat.Caller).UploadMedia]&#10;at caller.go:251: calling [github.com/eatMoreApple/openwechat.NewMediaSendMessage]&#10;at caller.go:253: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="398.1665" cy="-894.8" rx="80.6322" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-890.6" font-family="Verdana" font-size="14.00" fill="#000000">WebWxSendImageMsg</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).UploadMedia -->
<g id="edge52" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg-&gt;(*github.com/eatMoreApple/openwechat.Caller).UploadMedia</title>
<g id="a_edge52"><a xlink:title="at caller.go:246: calling [(*github.com/eatMoreApple/openwechat.Caller).UploadMedia]">
<path fill="none" stroke="#000000" d="M460.7646,-883.3075C494.3284,-877.3535 536.4342,-870.2165 574.1746,-864.8 646.0077,-854.4906 729.1519,-845.2061 782.967,-839.543"/>
<polygon fill="#000000" stroke="#000000" points="783.4141,-843.0154 792.9956,-838.4938 782.6857,-836.0534 783.4141,-843.0154"/>
</a>
</g>
</g>
<!-- github.com/eatMoreApple/openwechat.getSuccessSentMessage -->
<g id="node44" class="node">
<title>github.com/eatMoreApple/openwechat.getSuccessSentMessage</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="1439.0478" cy="-658.8" rx="206.941" ry="18"/>
<text text-anchor="middle" x="1439.0478" y="-654.6" font-family="Verdana" font-size="14.00" fill="#000000">github.com/eatMoreApple/openwechat.getSuccessSentMessage</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg&#45;&gt;github.com/eatMoreApple/openwechat.getSuccessSentMessage -->
<g id="edge2" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg-&gt;github.com/eatMoreApple/openwechat.getSuccessSentMessage</title>
<g id="a_edge2"><a xlink:title="at caller.go:254: calling [github.com/eatMoreApple/openwechat.getSuccessSentMessage]">
<path fill="none" stroke="#000000" d="M428.855,-878.0291C475.1134,-852.888 558.9406,-807.9178 574.1746,-803.8 688.2019,-772.978 999.2768,-829.4238 1105.0264,-776.8 1150.2157,-754.3126 1133.6204,-713.797 1178.0264,-689.8 1195.7948,-680.198 1215.221,-672.9894 1235.2007,-667.6338"/>
<polygon fill="#000000" stroke="#000000" points="1236.2075,-670.9895 1245.0485,-665.1511 1234.4963,-664.2019 1236.2075,-670.9895"/>
</a>
</g>
</g>
<!-- github.com/eatMoreApple/openwechat.NewMediaSendMessage -->
<g id="node70" class="node">
<title>github.com/eatMoreApple/openwechat.NewMediaSendMessage</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-955.8" rx="208.8287" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-951.6" font-family="Verdana" font-size="14.00" fill="#000000">github.com/eatMoreApple/openwechat.NewMediaSendMessage</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg&#45;&gt;github.com/eatMoreApple/openwechat.NewMediaSendMessage -->
<g id="edge66" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg-&gt;github.com/eatMoreApple/openwechat.NewMediaSendMessage</title>
<g id="a_edge66"><a xlink:title="at caller.go:251: calling [github.com/eatMoreApple/openwechat.NewMediaSendMessage]">
<path fill="none" stroke="#000000" d="M459.5154,-906.5644C493.2684,-912.7949 535.9424,-920.2779 574.1746,-925.8 612.7262,-931.3683 654.5535,-936.5121 693.3568,-940.9107"/>
<polygon fill="#000000" stroke="#000000" points="693.3539,-944.4323 703.6824,-942.0718 694.1362,-937.4762 693.3539,-944.4323"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg -->
<g id="node72" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-894.8" rx="229.6167" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-890.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg -->
<g id="edge70" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg-&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg</title>
<g id="a_edge70"><a xlink:title="at caller.go:253: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg]">
<path fill="none" stroke="#000000" d="M478.8755,-894.8C513.4975,-894.8 555.9473,-894.8 599.412,-894.8"/>
<polygon fill="#000000" stroke="#000000" points="599.5843,-898.3001 609.5843,-894.8 599.5843,-891.3001 599.5843,-898.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact -->
<g id="node9" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact</title>
<g id="a_node9"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact | defined in caller.go:175&#10;at caller.go:182: calling [github.com/eatMoreApple/openwechat.scanJson]&#10;at caller.go:176: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxBatchGetContact]&#10;at caller.go:185: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="839.6005" cy="-1016.8" rx="85.2976" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-1012.6" font-family="Verdana" font-size="14.00" fill="#000000">WebWxBatchGetContact</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact&#45;&gt;(github.com/eatMoreApple/openwechat.BaseResponse).Ok -->
<g id="edge53" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact-&gt;(github.com/eatMoreApple/openwechat.BaseResponse).Ok</title>
<g id="a_edge53"><a xlink:title="at caller.go:185: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]">
<path fill="none" stroke="#000000" d="M924.0547,-1019.6746C976.9001,-1023.1774 1045.9266,-1030.8873 1105.0264,-1047.8 1122.0378,-1052.6682 1124.0328,-1059.8701 1141.0264,-1064.8 1182.1383,-1076.7266 1227.5343,-1084.8088 1270.2376,-1090.2859"/>
<polygon fill="#000000" stroke="#000000" points="1269.8091,-1093.7595 1280.1643,-1091.5189 1270.6721,-1086.8129 1269.8091,-1093.7595"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact&#45;&gt;github.com/eatMoreApple/openwechat.scanJson -->
<g id="edge23" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact-&gt;github.com/eatMoreApple/openwechat.scanJson</title>
<g id="a_edge23"><a xlink:title="at caller.go:182: calling [github.com/eatMoreApple/openwechat.scanJson]">
<path fill="none" stroke="#000000" d="M908.3038,-1006.0032C966.9463,-1000.7876 1050.2484,-1003.3893 1105.0264,-1047.8 1174.3305,-1103.9876 1105.7257,-1182.5247 1178.0264,-1234.8 1211.9193,-1259.3054 1255.0179,-1270.1054 1296.3801,-1273.8739"/>
<polygon fill="#000000" stroke="#000000" points="1296.3285,-1277.3804 1306.5698,-1274.6664 1296.8714,-1270.4014 1296.3285,-1277.3804"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).WebWxBatchGetContact -->
<g id="node56" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).WebWxBatchGetContact</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="1439.0478" cy="-1016.8" rx="241.8354" ry="18"/>
<text text-anchor="middle" x="1439.0478" y="-1012.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).WebWxBatchGetContact</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxBatchGetContact -->
<g id="edge28" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact-&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxBatchGetContact</title>
<g id="a_edge28"><a xlink:title="at caller.go:176: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxBatchGetContact]">
<path fill="none" stroke="#000000" d="M925.1682,-1016.8C993.6771,-1016.8 1093.4335,-1016.8 1186.8654,-1016.8"/>
<polygon fill="#000000" stroke="#000000" points="1187.0516,-1020.3001 1197.0515,-1016.8 1187.0515,-1013.3001 1187.0516,-1020.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).GetLoginInfo -->
<g id="node64" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).GetLoginInfo</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-1504.8" rx="204.1178" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-1500.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).GetLoginInfo</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).GetLoginInfo -->
<g id="edge56" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo-&gt;(*github.com/eatMoreApple/openwechat.Client).GetLoginInfo</title>
<g id="a_edge56"><a xlink:title="at caller.go:84: calling [(*github.com/eatMoreApple/openwechat.Client).GetLoginInfo]">
<path fill="none" stroke="#000000" d="M441.4658,-1557.7669C477.0319,-1551.3259 528.7634,-1542.3174 574.1746,-1535.8 614.6053,-1529.9974 658.6192,-1524.5196 698.97,-1519.8293"/>
<polygon fill="#000000" stroke="#000000" points="699.613,-1523.2784 709.1454,-1518.6541 698.8099,-1516.3246 699.613,-1523.2784"/>
</a>
</g>
</g>
<!-- github.com/eatMoreApple/openwechat.scanXml -->
<g id="node67" class="node">
<title>github.com/eatMoreApple/openwechat.scanXml</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-1565.8" rx="158.241" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-1561.6" font-family="Verdana" font-size="14.00" fill="#000000">github.com/eatMoreApple/openwechat.scanXml</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo&#45;&gt;github.com/eatMoreApple/openwechat.scanXml -->
<g id="edge61" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo-&gt;github.com/eatMoreApple/openwechat.scanXml</title>
<g id="a_edge61"><a xlink:title="at caller.go:96: calling [github.com/eatMoreApple/openwechat.scanXml]">
<path fill="none" stroke="#000000" d="M446.248,-1565.8C500.0352,-1565.8 590.1874,-1565.8 670.6241,-1565.8"/>
<polygon fill="#000000" stroke="#000000" points="670.888,-1569.3001 680.888,-1565.8 670.888,-1562.3001 670.888,-1569.3001"/>
</a>
</g>
</g>
<!-- (github.com/eatMoreApple/openwechat.LoginInfo).Ok -->
<g id="node68" class="node">
<title>(github.com/eatMoreApple/openwechat.LoginInfo).Ok</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-1626.8" rx="179.4975" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-1622.6" font-family="Verdana" font-size="14.00" fill="#000000">(github.com/eatMoreApple/openwechat.LoginInfo).Ok</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo&#45;&gt;(github.com/eatMoreApple/openwechat.LoginInfo).Ok -->
<g id="edge62" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo-&gt;(github.com/eatMoreApple/openwechat.LoginInfo).Ok</title>
<g id="a_edge62"><a xlink:title="at caller.go:99: calling [(github.com/eatMoreApple/openwechat.LoginInfo).Ok]">
<path fill="none" stroke="#000000" d="M441.0859,-1574.1239C476.6507,-1580.8371 528.5723,-1590.2134 574.1746,-1596.8 615.7284,-1602.8019 661.0879,-1608.3107 702.3641,-1612.9246"/>
<polygon fill="#000000" stroke="#000000" points="702.1615,-1616.4235 712.4864,-1614.0474 702.9333,-1609.4661 702.1615,-1616.4235"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebInit&#45;&gt;github.com/eatMoreApple/openwechat.scanJson -->
<g id="edge43" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebInit-&gt;github.com/eatMoreApple/openwechat.scanJson</title>
<g id="a_edge43"><a xlink:title="at caller.go:113: calling [github.com/eatMoreApple/openwechat.scanJson]">
<path fill="none" stroke="#000000" d="M869.9633,-1384.5978C920.6814,-1386.4777 1024.9588,-1385.5011 1105.0264,-1352.8 1143.134,-1337.2362 1139.9631,-1311.4717 1178.0264,-1295.8 1208.2375,-1283.3613 1241.9656,-1275.4553 1274.8807,-1270.5197"/>
<polygon fill="#000000" stroke="#000000" points="1275.6525,-1273.9455 1285.0649,-1269.0816 1274.6737,-1267.0143 1275.6525,-1273.9455"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).WebInit -->
<g id="node57" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).WebInit</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="1439.0478" cy="-1395.8" rx="186.9482" ry="18"/>
<text text-anchor="middle" x="1439.0478" y="-1391.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).WebInit</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebInit&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).WebInit -->
<g id="edge29" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebInit-&gt;(*github.com/eatMoreApple/openwechat.Client).WebInit</title>
<g id="a_edge29"><a xlink:title="at caller.go:107: calling [(*github.com/eatMoreApple/openwechat.Client).WebInit]">
<path fill="none" stroke="#000000" d="M870.1513,-1383.4625C938.7575,-1384.9504 1109.7465,-1388.6586 1246.4758,-1391.6238"/>
<polygon fill="#000000" stroke="#000000" points="1246.6007,-1395.1272 1256.6743,-1391.8449 1246.7526,-1388.1288 1246.6007,-1395.1272"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify&#45;&gt;(github.com/eatMoreApple/openwechat.BaseResponse).Ok -->
<g id="edge5" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify-&gt;(github.com/eatMoreApple/openwechat.BaseResponse).Ok</title>
<g id="a_edge5"><a xlink:title="at caller.go:130: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]">
<path fill="none" stroke="#000000" d="M903.7008,-1329.5087C960.899,-1333.1107 1044.6961,-1330.0172 1105.0264,-1291.8 1157.1224,-1258.7989 1128.6713,-1210.7749 1178.0264,-1173.8 1215.539,-1145.6971 1263.4273,-1128.5632 1307.9183,-1118.117"/>
<polygon fill="#000000" stroke="#000000" points="1308.9611,-1121.4699 1317.9487,-1115.8597 1307.4242,-1114.6407 1308.9611,-1121.4699"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify&#45;&gt;github.com/eatMoreApple/openwechat.scanJson -->
<g id="edge71" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify-&gt;github.com/eatMoreApple/openwechat.scanJson</title>
<g id="a_edge71"><a xlink:title="at caller.go:127: calling [github.com/eatMoreApple/openwechat.scanJson]">
<path fill="none" stroke="#000000" d="M906.0422,-1315.4822C1002.4033,-1306.3195 1182.9544,-1289.1513 1307.0039,-1277.3557"/>
<polygon fill="#000000" stroke="#000000" points="1307.705,-1280.8049 1317.3288,-1276.374 1307.0424,-1273.8364 1307.705,-1280.8049"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).WebWxStatusNotify -->
<g id="node52" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).WebWxStatusNotify</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="1439.0478" cy="-1325.8" rx="227.3408" ry="18"/>
<text text-anchor="middle" x="1439.0478" y="-1321.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).WebWxStatusNotify</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxStatusNotify -->
<g id="edge19" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify-&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxStatusNotify</title>
<g id="a_edge19"><a xlink:title="at caller.go:121: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxStatusNotify]">
<path fill="none" stroke="#000000" d="M910.719,-1322.2746C982.6743,-1322.7547 1097.908,-1323.5236 1202.4204,-1324.221"/>
<polygon fill="#000000" stroke="#000000" points="1202.4761,-1327.7214 1212.4992,-1324.2883 1202.5228,-1320.7215 1202.4761,-1327.7214"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).SyncCheck -->
<g id="node60" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).SyncCheck</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-1199.8" rx="196.678" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-1195.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).SyncCheck</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).SyncCheck&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).SyncCheck -->
<g id="edge41" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).SyncCheck-&gt;(*github.com/eatMoreApple/openwechat.Client).SyncCheck</title>
<g id="a_edge41"><a xlink:title="at caller.go:138: calling [(*github.com/eatMoreApple/openwechat.Client).SyncCheck]">
<path fill="none" stroke="#000000" d="M438.9043,-1199.8C483.6496,-1199.8 558.93,-1199.8 632.2385,-1199.8"/>
<polygon fill="#000000" stroke="#000000" points="632.5662,-1203.3001 642.5662,-1199.8 632.5662,-1196.3001 632.5662,-1203.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSync&#45;&gt;github.com/eatMoreApple/openwechat.scanJson -->
<g id="edge60" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSync-&gt;github.com/eatMoreApple/openwechat.scanJson</title>
<g id="a_edge60"><a xlink:title="at caller.go:199: calling [github.com/eatMoreApple/openwechat.scanJson]">
<path fill="none" stroke="#000000" d="M883.8388,-1449.9231C939.8646,-1455.3394 1037.2527,-1456.7323 1105.0264,-1413.8 1157.1224,-1380.7989 1126.0241,-1328.9484 1178.0264,-1295.8 1206.9213,-1277.3812 1241.3219,-1267.1003 1275.5126,-1261.7681"/>
<polygon fill="#000000" stroke="#000000" points="1276.2182,-1265.2031 1285.6261,-1260.3306 1275.2331,-1258.2727 1276.2182,-1265.2031"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).WebWxSync -->
<g id="node53" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).WebWxSync</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="1439.0478" cy="-1456.8" rx="202.9773" ry="18"/>
<text text-anchor="middle" x="1439.0478" y="-1452.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).WebWxSync</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSync&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxSync -->
<g id="edge20" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSync-&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxSync</title>
<g id="a_edge20"><a xlink:title="at caller.go:193: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSync]">
<path fill="none" stroke="#000000" d="M886.6381,-1444.8201C960.4036,-1446.4198 1107.6792,-1449.6137 1231.6212,-1452.3016"/>
<polygon fill="#000000" stroke="#000000" points="1231.5639,-1455.8011 1241.6375,-1452.5188 1231.7158,-1448.8027 1231.5639,-1455.8011"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg -->
<g id="node15" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg</title>
<g id="a_node15"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg | defined in caller.go:206&#10;at caller.go:208: calling [github.com/eatMoreApple/openwechat.getSuccessSentMessage]&#10;at caller.go:207: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsg]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="839.6005" cy="-684.8" rx="60.5816" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-680.6" font-family="Verdana" font-size="14.00" fill="#000000">WebWxSendMsg</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg&#45;&gt;github.com/eatMoreApple/openwechat.getSuccessSentMessage -->
<g id="edge11" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg-&gt;github.com/eatMoreApple/openwechat.getSuccessSentMessage</title>
<g id="a_edge11"><a xlink:title="at caller.go:208: calling [github.com/eatMoreApple/openwechat.getSuccessSentMessage]">
<path fill="none" stroke="#000000" d="M899.8224,-682.188C979.6699,-678.7247 1124.4123,-672.4468 1243.8438,-667.2666"/>
<polygon fill="#000000" stroke="#000000" points="1244.0154,-670.7626 1253.8543,-666.8325 1243.712,-663.7692 1244.0154,-670.7626"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).WebWxSendMsg -->
<g id="node61" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsg</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="1439.0478" cy="-719.8" rx="217.1187" ry="18"/>
<text text-anchor="middle" x="1439.0478" y="-715.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsg</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsg -->
<g id="edge46" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg-&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsg</title>
<g id="a_edge46"><a xlink:title="at caller.go:207: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsg]">
<path fill="none" stroke="#000000" d="M899.2693,-688.2839C980.641,-693.035 1130.1377,-701.7636 1251.2016,-708.8322"/>
<polygon fill="#000000" stroke="#000000" points="1251.1552,-712.3354 1261.3422,-709.4243 1251.5633,-705.3473 1251.1552,-712.3354"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).Logout -->
<g id="node47" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).Logout</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-745.8" rx="183.8111" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-741.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).Logout</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).Logout&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).Logout -->
<g id="edge9" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).Logout-&gt;(*github.com/eatMoreApple/openwechat.Client).Logout</title>
<g id="a_edge9"><a xlink:title="at caller.go:281: calling [(*github.com/eatMoreApple/openwechat.Client).Logout]">
<path fill="none" stroke="#000000" d="M424.7529,-801.809C452.6841,-796.6598 497.9243,-788.5858 537.1746,-782.8 592.9735,-774.5749 654.7566,-766.7826 707.8586,-760.4895"/>
<polygon fill="#000000" stroke="#000000" points="708.4924,-763.9391 718.0136,-759.2917 707.6724,-756.9873 708.4924,-763.9391"/>
</a>
</g>
</g>
<!-- github.com/eatMoreApple/openwechat.parseBaseResponseError -->
<g id="node51" class="node">
<title>github.com/eatMoreApple/openwechat.parseBaseResponseError</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-501.8" rx="209.1963" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-497.6" font-family="Verdana" font-size="14.00" fill="#000000">github.com/eatMoreApple/openwechat.parseBaseResponseError</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).Logout&#45;&gt;github.com/eatMoreApple/openwechat.parseBaseResponseError -->
<g id="edge16" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).Logout-&gt;github.com/eatMoreApple/openwechat.parseBaseResponseError</title>
<g id="a_edge16"><a xlink:title="at caller.go:285: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]">
<path fill="none" stroke="#000000" d="M425.8643,-805.7999C448.9627,-803.4921 481.2142,-796.6152 501.1746,-776.8 581.5065,-697.0527 487.4666,-605.5637 574.1746,-532.8 588.043,-521.1619 603.8508,-512.3517 620.6847,-505.7775"/>
<polygon fill="#000000" stroke="#000000" points="621.9278,-509.0498 630.1366,-502.3514 619.5424,-502.4687 621.9278,-509.0498"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg -->
<g id="node17" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg</title>
<g id="a_node17"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg | defined in caller.go:322&#10;at caller.go:327: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]&#10;at caller.go:323: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxRevokeMsg]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="398.1665" cy="-501.8" rx="69.2796" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-497.6" font-family="Verdana" font-size="14.00" fill="#000000">WebWxRevokeMsg</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg&#45;&gt;github.com/eatMoreApple/openwechat.parseBaseResponseError -->
<g id="edge48" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg-&gt;github.com/eatMoreApple/openwechat.parseBaseResponseError</title>
<g id="a_edge48"><a xlink:title="at caller.go:327: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]">
<path fill="none" stroke="#000000" d="M467.6262,-501.8C509.1123,-501.8 564.3356,-501.8 619.5069,-501.8"/>
<polygon fill="#000000" stroke="#000000" points="619.8047,-505.3001 629.8047,-501.8 619.8047,-498.3001 619.8047,-505.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).WebWxRevokeMsg -->
<g id="node69" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).WebWxRevokeMsg</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-562.8" rx="225.3171" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-558.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).WebWxRevokeMsg</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxRevokeMsg -->
<g id="edge64" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg-&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxRevokeMsg</title>
<g id="a_edge64"><a xlink:title="at caller.go:323: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxRevokeMsg]">
<path fill="none" stroke="#000000" d="M453.9092,-512.5259C488.4556,-518.9473 533.7927,-526.9674 574.1746,-532.8 611.5676,-538.2009 652.0422,-543.2025 689.8501,-547.5121"/>
<polygon fill="#000000" stroke="#000000" points="689.5878,-551.0046 699.9178,-548.6506 690.3745,-544.049 689.5878,-551.0046"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact -->
<g id="node18" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact</title>
<g id="a_node18"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact | defined in caller.go:157&#10;at caller.go:164: calling [github.com/eatMoreApple/openwechat.scanJson]&#10;at caller.go:167: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]&#10;at caller.go:158: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxGetContact]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="839.6005" cy="-1260.8" rx="66.874" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-1256.6" font-family="Verdana" font-size="14.00" fill="#000000">WebWxGetContact</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact&#45;&gt;(github.com/eatMoreApple/openwechat.BaseResponse).Ok -->
<g id="edge21" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact-&gt;(github.com/eatMoreApple/openwechat.BaseResponse).Ok</title>
<g id="a_edge21"><a xlink:title="at caller.go:167: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]">
<path fill="none" stroke="#000000" d="M906.1436,-1263.1524C961.3706,-1262.822 1040.9509,-1256.9696 1105.0264,-1230.8 1143.134,-1215.2362 1141.253,-1192.2969 1178.0264,-1173.8 1228.1255,-1148.6003 1288.2151,-1131.2515 1338.1045,-1119.9087"/>
<polygon fill="#000000" stroke="#000000" points="1338.9396,-1123.3086 1347.9404,-1117.7197 1337.4188,-1116.4758 1338.9396,-1123.3086"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact&#45;&gt;github.com/eatMoreApple/openwechat.scanJson -->
<g id="edge6" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact-&gt;github.com/eatMoreApple/openwechat.scanJson</title>
<g id="a_edge6"><a xlink:title="at caller.go:164: calling [github.com/eatMoreApple/openwechat.scanJson]">
<path fill="none" stroke="#000000" d="M906.6198,-1261.2472C994.0595,-1261.8307 1150.112,-1262.872 1270.7468,-1263.677"/>
<polygon fill="#000000" stroke="#000000" points="1270.8114,-1267.1774 1280.8345,-1263.7443 1270.8581,-1260.1775 1270.8114,-1267.1774"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).WebWxGetContact -->
<g id="node65" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).WebWxGetContact</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="1439.0478" cy="-1203.8" rx="223.4119" ry="18"/>
<text text-anchor="middle" x="1439.0478" y="-1199.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).WebWxGetContact</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxGetContact -->
<g id="edge57" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact-&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxGetContact</title>
<g id="a_edge57"><a xlink:title="at caller.go:158: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxGetContact]">
<path fill="none" stroke="#000000" d="M902.9014,-1254.7809C992.8595,-1246.227 1160.5129,-1230.2852 1284.4851,-1218.497"/>
<polygon fill="#000000" stroke="#000000" points="1284.8348,-1221.9796 1294.4585,-1217.5486 1284.1721,-1215.0111 1284.8348,-1221.9796"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).GetLoginUUID -->
<g id="node66" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).GetLoginUUID</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-1077.8" rx="210.8003" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-1073.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).GetLoginUUID</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).GetLoginUUID&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).GetLoginUUID -->
<g id="edge58" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).GetLoginUUID-&gt;(*github.com/eatMoreApple/openwechat.Client).GetLoginUUID</title>
<g id="a_edge58"><a xlink:title="at caller.go:30: calling [(*github.com/eatMoreApple/openwechat.Client).GetLoginUUID]">
<path fill="none" stroke="#000000" d="M453.1819,-1077.8C495.436,-1077.8 556.7837,-1077.8 618.2017,-1077.8"/>
<polygon fill="#000000" stroke="#000000" points="618.4566,-1081.3001 628.4565,-1077.8 618.4565,-1074.3001 618.4566,-1081.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).CheckLogin -->
<g id="node59" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).CheckLogin</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-1138.8" rx="199.8355" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-1134.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).CheckLogin</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).CheckLogin&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).CheckLogin -->
<g id="edge35" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).CheckLogin-&gt;(*github.com/eatMoreApple/openwechat.Client).CheckLogin</title>
<g id="a_edge35"><a xlink:title="at caller.go:52: calling [(*github.com/eatMoreApple/openwechat.Client).CheckLogin]">
<path fill="none" stroke="#000000" d="M442.1067,-1138.8C486.5357,-1138.8 558.5436,-1138.8 629.1479,-1138.8"/>
<polygon fill="#000000" stroke="#000000" points="629.5513,-1142.3001 639.5513,-1138.8 629.5513,-1135.3001 629.5513,-1142.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom -->
<g id="node21" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom</title>
<g id="a_node21"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom | defined in caller.go:301&#10;at caller.go:309: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]&#10;at caller.go:305: calling [(*github.com/eatMoreApple/openwechat.Client).RemoveMemberFromChatRoom]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="398.1665" cy="-318.8" rx="103.0162" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-314.6" font-family="Verdana" font-size="14.00" fill="#000000">RemoveFriendFromChatRoom</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom&#45;&gt;github.com/eatMoreApple/openwechat.parseBaseResponseError -->
<g id="edge39" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom-&gt;github.com/eatMoreApple/openwechat.parseBaseResponseError</title>
<g id="a_edge39"><a xlink:title="at caller.go:309: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]">
<path fill="none" stroke="#000000" d="M467.8299,-332.0628C479.7208,-336.4068 491.3783,-342.1664 501.1746,-349.8 551.0166,-388.639 521.0473,-437.5921 574.1746,-471.8 589.6369,-481.756 606.678,-489.3473 624.4376,-495.0677"/>
<polygon fill="#000000" stroke="#000000" points="623.7882,-498.5272 634.3726,-498.0564 625.8048,-491.824 623.7882,-498.5272"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).RemoveMemberFromChatRoom -->
<g id="node62" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).RemoveMemberFromChatRoom</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-318.8" rx="265.3518" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-314.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).RemoveMemberFromChatRoom</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).RemoveMemberFromChatRoom -->
<g id="edge49" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom-&gt;(*github.com/eatMoreApple/openwechat.Client).RemoveMemberFromChatRoom</title>
<g id="a_edge49"><a xlink:title="at caller.go:305: calling [(*github.com/eatMoreApple/openwechat.Client).RemoveMemberFromChatRoom]">
<path fill="none" stroke="#000000" d="M501.3845,-318.8C520.8289,-318.8 541.9906,-318.8 563.9257,-318.8"/>
<polygon fill="#000000" stroke="#000000" points="564.055,-322.3001 574.055,-318.8 564.0549,-315.3001 564.055,-322.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile -->
<g id="node22" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile</title>
<g id="a_node22"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile | defined in caller.go:257&#10;at caller.go:269: calling [github.com/eatMoreApple/openwechat.NewSendMessage]&#10;at caller.go:264: calling [github.com/eatMoreApple/openwechat.NewFileAppMessage]&#10;at caller.go:258: calling [(*github.com/eatMoreApple/openwechat.Caller).UploadMedia]&#10;at caller.go:265: calling [(github.com/eatMoreApple/openwechat.appmsg).XmlByte]&#10;at caller.go:270: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="398.1665" cy="-196.8" rx="59.0636" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-192.6" font-family="Verdana" font-size="14.00" fill="#000000">WebWxSendFile</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).UploadMedia -->
<g id="edge22" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile-&gt;(*github.com/eatMoreApple/openwechat.Caller).UploadMedia</title>
<g id="a_edge22"><a xlink:title="at caller.go:258: calling [(*github.com/eatMoreApple/openwechat.Caller).UploadMedia]">
<path fill="none" stroke="#000000" d="M424.9044,-212.8807C449.0385,-228.9238 483.4014,-255.8872 501.1746,-288.8 605.3768,-481.7646 424.0692,-616.9194 574.1746,-776.8 627.3135,-833.3994 721.9594,-840.761 782.6974,-838.815"/>
<polygon fill="#000000" stroke="#000000" points="783.0377,-842.3039 792.8837,-838.3915 782.7469,-835.31 783.0377,-842.3039"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg -->
<g id="node23" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg</title>
<g id="a_node23"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg | defined in caller.go:274&#10;at caller.go:275: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg]&#10;at caller.go:276: calling [github.com/eatMoreApple/openwechat.getSuccessSentMessage]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="839.6005" cy="-135.8" rx="74.3375" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-131.6" font-family="Verdana" font-size="14.00" fill="#000000">WebWxSendAppMsg</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg -->
<g id="edge50" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg</title>
<g id="a_edge50"><a xlink:title="at caller.go:270: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg]">
<path fill="none" stroke="#000000" d="M448.1064,-187.1565C483.268,-180.5747 531.4896,-171.9653 574.1746,-165.8 636.4816,-156.8006 707.3448,-148.9097 760.1695,-143.4823"/>
<polygon fill="#000000" stroke="#000000" points="760.558,-146.961 770.1511,-142.464 759.8475,-139.9971 760.558,-146.961"/>
</a>
</g>
</g>
<!-- github.com/eatMoreApple/openwechat.NewSendMessage -->
<g id="node48" class="node">
<title>github.com/eatMoreApple/openwechat.NewSendMessage</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-196.8" rx="188.8912" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-192.6" font-family="Verdana" font-size="14.00" fill="#000000">github.com/eatMoreApple/openwechat.NewSendMessage</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile&#45;&gt;github.com/eatMoreApple/openwechat.NewSendMessage -->
<g id="edge10" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile-&gt;github.com/eatMoreApple/openwechat.NewSendMessage</title>
<g id="a_edge10"><a xlink:title="at caller.go:269: calling [github.com/eatMoreApple/openwechat.NewSendMessage]">
<path fill="none" stroke="#000000" d="M457.2422,-196.8C504.5048,-196.8 573.6564,-196.8 640.1996,-196.8"/>
<polygon fill="#000000" stroke="#000000" points="640.4236,-200.3001 650.4235,-196.8 640.4235,-193.3001 640.4236,-200.3001"/>
</a>
</g>
</g>
<!-- github.com/eatMoreApple/openwechat.NewFileAppMessage -->
<g id="node49" class="node">
<title>github.com/eatMoreApple/openwechat.NewFileAppMessage</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-257.8" rx="198.6164" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-253.6" font-family="Verdana" font-size="14.00" fill="#000000">github.com/eatMoreApple/openwechat.NewFileAppMessage</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile&#45;&gt;github.com/eatMoreApple/openwechat.NewFileAppMessage -->
<g id="edge12" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile-&gt;github.com/eatMoreApple/openwechat.NewFileAppMessage</title>
<g id="a_edge12"><a xlink:title="at caller.go:264: calling [github.com/eatMoreApple/openwechat.NewFileAppMessage]">
<path fill="none" stroke="#000000" d="M448.1064,-206.4435C483.268,-213.0253 531.4896,-221.6347 574.1746,-227.8 613.7365,-233.5142 656.748,-238.7814 696.4011,-243.2549"/>
<polygon fill="#000000" stroke="#000000" points="696.0785,-246.7406 706.4059,-244.375 696.8574,-239.7841 696.0785,-246.7406"/>
</a>
</g>
</g>
<!-- (github.com/eatMoreApple/openwechat.appmsg).XmlByte -->
<g id="node54" class="node">
<title>(github.com/eatMoreApple/openwechat.appmsg).XmlByte</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-74.8" rx="191.2507" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-70.6" font-family="Verdana" font-size="14.00" fill="#000000">(github.com/eatMoreApple/openwechat.appmsg).XmlByte</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile&#45;&gt;(github.com/eatMoreApple/openwechat.appmsg).XmlByte -->
<g id="edge24" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile-&gt;(github.com/eatMoreApple/openwechat.appmsg).XmlByte</title>
<g id="a_edge24"><a xlink:title="at caller.go:265: calling [(github.com/eatMoreApple/openwechat.appmsg).XmlByte]">
<path fill="none" stroke="#000000" d="M422.5497,-180.3025C455.4153,-158.9696 516.4788,-122.464 574.1746,-104.8 602.7592,-96.0486 633.778,-89.8024 664.1928,-85.3545"/>
<polygon fill="#000000" stroke="#000000" points="665.0618,-88.767 674.4798,-83.914 664.091,-81.8347 665.0618,-88.767"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg&#45;&gt;github.com/eatMoreApple/openwechat.getSuccessSentMessage -->
<g id="edge65" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg-&gt;github.com/eatMoreApple/openwechat.getSuccessSentMessage</title>
<g id="a_edge65"><a xlink:title="at caller.go:276: calling [github.com/eatMoreApple/openwechat.getSuccessSentMessage]">
<path fill="none" stroke="#000000" d="M907.8203,-128.4554C964.6076,-125.6893 1045.504,-129.8018 1105.0264,-165.8 1293.1093,-279.5496 1399.1707,-544.3968 1429.7223,-630.913"/>
<polygon fill="#000000" stroke="#000000" points="1426.4852,-632.2608 1433.0742,-640.5576 1433.0973,-629.9628 1426.4852,-632.2608"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg -->
<g id="node55" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="1439.0478" cy="-135.8" rx="230.8754" ry="18"/>
<text text-anchor="middle" x="1439.0478" y="-131.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg -->
<g id="edge27" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg-&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg</title>
<g id="a_edge27"><a xlink:title="at caller.go:275: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg]">
<path fill="none" stroke="#000000" d="M914.3089,-135.8C985.4595,-135.8 1096.4777,-135.8 1198.1096,-135.8"/>
<polygon fill="#000000" stroke="#000000" points="1198.2295,-139.3001 1208.2295,-135.8 1198.2295,-132.3001 1198.2295,-139.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom -->
<g id="node24" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom</title>
<g id="a_node24"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom | defined in caller.go:289&#10;at caller.go:297: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]&#10;at caller.go:293: calling [(*github.com/eatMoreApple/openwechat.Client).AddMemberIntoChatRoom]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="398.1665" cy="-379.8" rx="85.7206" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-375.6" font-family="Verdana" font-size="14.00" fill="#000000">AddFriendIntoChatRoom</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom&#45;&gt;github.com/eatMoreApple/openwechat.parseBaseResponseError -->
<g id="edge33" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom-&gt;github.com/eatMoreApple/openwechat.parseBaseResponseError</title>
<g id="a_edge33"><a xlink:title="at caller.go:297: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]">
<path fill="none" stroke="#000000" d="M456.7473,-392.9819C471.7148,-397.5336 487.4463,-403.4032 501.1746,-410.8 538.3962,-430.8551 535.303,-455.1672 574.1746,-471.8 594.8797,-480.6595 617.2811,-487.2373 639.9899,-492.0803"/>
<polygon fill="#000000" stroke="#000000" points="639.5923,-495.5705 650.0871,-494.1181 640.9772,-488.7089 639.5923,-495.5705"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).AddMemberIntoChatRoom -->
<g id="node63" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).AddMemberIntoChatRoom</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-379.8" rx="248.0561" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-375.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).AddMemberIntoChatRoom</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).AddMemberIntoChatRoom -->
<g id="edge55" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom-&gt;(*github.com/eatMoreApple/openwechat.Client).AddMemberIntoChatRoom</title>
<g id="a_edge55"><a xlink:title="at caller.go:293: calling [(*github.com/eatMoreApple/openwechat.Client).AddMemberIntoChatRoom]">
<path fill="none" stroke="#000000" d="M484.0649,-379.8C512.6004,-379.8 546.009,-379.8 580.7163,-379.8"/>
<polygon fill="#000000" stroke="#000000" points="581.029,-383.3001 591.029,-379.8 581.0289,-376.3001 581.029,-383.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxOplog -->
<g id="node25" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxOplog</title>
<g id="a_node25"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).WebWxOplog | defined in caller.go:212&#10;at caller.go:213: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxOplog]&#10;at caller.go:217: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="398.1665" cy="-440.8" rx="50.8548" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-436.6" font-family="Verdana" font-size="14.00" fill="#000000">WebWxOplog</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).WebWxOplog -->
<g id="node50" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).WebWxOplog</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-440.8" rx="206.8919" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-436.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).WebWxOplog</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxOplog&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxOplog -->
<g id="edge13" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxOplog-&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxOplog</title>
<g id="a_edge13"><a xlink:title="at caller.go:213: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxOplog]">
<path fill="none" stroke="#000000" d="M449.2358,-440.8C492.4288,-440.8 557.4485,-440.8 622.1,-440.8"/>
<polygon fill="#000000" stroke="#000000" points="622.4697,-444.3001 632.4696,-440.8 622.4696,-437.3001 622.4697,-444.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxOplog&#45;&gt;github.com/eatMoreApple/openwechat.parseBaseResponseError -->
<g id="edge26" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxOplog-&gt;github.com/eatMoreApple/openwechat.parseBaseResponseError</title>
<g id="a_edge26"><a xlink:title="at caller.go:217: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]">
<path fill="none" stroke="#000000" d="M442.8959,-449.4651C478.3971,-456.152 529.34,-465.3243 574.1746,-471.8 612.7262,-477.3683 654.5535,-482.5121 693.3568,-486.9107"/>
<polygon fill="#000000" stroke="#000000" points="693.3539,-490.4323 703.6824,-488.0718 694.1362,-483.4762 693.3539,-490.4323"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser -->
<g id="node26" class="node">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser</title>
<g id="a_node26"><a xlink:title="(*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser | defined in caller.go:313&#10;at caller.go:318: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]&#10;at caller.go:314: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxVerifyUser]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="398.1665" cy="-562.8" rx="66.4701" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-558.6" font-family="Verdana" font-size="14.00" fill="#000000">WebWxVerifyUser</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser&#45;&gt;github.com/eatMoreApple/openwechat.parseBaseResponseError -->
<g id="edge18" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser-&gt;github.com/eatMoreApple/openwechat.parseBaseResponseError</title>
<g id="a_edge18"><a xlink:title="at caller.go:318: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]">
<path fill="none" stroke="#000000" d="M453.1464,-552.6645C487.7983,-546.4663 533.5193,-538.6348 574.1746,-532.8 614.1819,-527.0582 657.6978,-521.6343 697.7013,-516.9769"/>
<polygon fill="#000000" stroke="#000000" points="698.2602,-520.4357 707.7917,-515.8096 697.4557,-513.4821 698.2602,-520.4357"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Client).WebWxVerifyUser -->
<g id="node58" class="node">
<title>(*github.com/eatMoreApple/openwechat.Client).WebWxVerifyUser</title>
<ellipse fill="#f0fff0" stroke="#000000" cx="839.6005" cy="-623.8" rx="222.5082" ry="18"/>
<text text-anchor="middle" x="839.6005" y="-619.6" font-family="Verdana" font-size="14.00" fill="#000000">(*github.com/eatMoreApple/openwechat.Client).WebWxVerifyUser</text>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser&#45;&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxVerifyUser -->
<g id="edge34" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser-&gt;(*github.com/eatMoreApple/openwechat.Client).WebWxVerifyUser</title>
<g id="a_edge34"><a xlink:title="at caller.go:314: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxVerifyUser]">
<path fill="none" stroke="#000000" d="M452.7312,-573.3068C487.4207,-579.764 533.3321,-587.9009 574.1746,-593.8 611.7782,-599.2313 652.4984,-604.2589 690.4888,-608.5848"/>
<polygon fill="#000000" stroke="#000000" points="690.2742,-612.0828 700.6039,-609.7275 691.0601,-605.127 690.2742,-612.0828"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Message).Reply -->
<g id="node27" class="node">
<title>(*github.com/eatMoreApple/openwechat.Message).Reply</title>
<g id="a_node27"><a xlink:title="(*github.com/eatMoreApple/openwechat.Message).Reply | defined in message.go:123&#10;at message.go:124: calling [github.com/eatMoreApple/openwechat.NewSendMessage]&#10;at message.go:127: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="398.1665" cy="-745.8" rx="27" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-741.6" font-family="Verdana" font-size="14.00" fill="#000000">Reply</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Message).Reply&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg -->
<g id="edge32" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Message).Reply-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg</title>
<g id="a_edge32"><a xlink:title="at message.go:127: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg]">
<path fill="none" stroke="#000000" d="M424.34,-740.8963C458.661,-734.5679 520.7857,-723.4623 574.1746,-715.8 641.262,-706.1717 718.2153,-697.4374 771.9286,-691.7121"/>
<polygon fill="#000000" stroke="#000000" points="772.44,-695.1776 782.0155,-690.6432 771.7023,-688.2165 772.44,-695.1776"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Message).ReplyFile -->
<g id="node28" class="node">
<title>(*github.com/eatMoreApple/openwechat.Message).ReplyFile</title>
<g id="a_node28"><a xlink:title="(*github.com/eatMoreApple/openwechat.Message).ReplyFile | defined in message.go:143&#10;at message.go:146: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="127.0792" cy="-135.8" rx="35.9827" ry="18"/>
<text text-anchor="middle" x="127.0792" y="-131.6" font-family="Verdana" font-size="14.00" fill="#000000">ReplyFile</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Message).ReplyFile&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile -->
<g id="edge4" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Message).ReplyFile-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile</title>
<g id="a_edge4"><a xlink:title="at message.go:146: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile]">
<path fill="none" stroke="#000000" d="M159.7787,-143.158C204.455,-153.2111 285.2941,-171.4015 340.3269,-183.7849"/>
<polygon fill="#000000" stroke="#000000" points="339.7634,-187.2456 350.2878,-186.0264 341.3002,-180.4164 339.7634,-187.2456"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Message).ReplyImage -->
<g id="node29" class="node">
<title>(*github.com/eatMoreApple/openwechat.Message).ReplyImage</title>
<g id="a_node29"><a xlink:title="(*github.com/eatMoreApple/openwechat.Message).ReplyImage | defined in message.go:136&#10;at message.go:139: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="127.0792" cy="-916.8" rx="43.4091" ry="18"/>
<text text-anchor="middle" x="127.0792" y="-912.6" font-family="Verdana" font-size="14.00" fill="#000000">ReplyImage</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Message).ReplyImage&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg -->
<g id="edge17" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Message).ReplyImage-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg</title>
<g id="a_edge17"><a xlink:title="at message.go:139: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg]">
<path fill="none" stroke="#000000" d="M169.7348,-913.3383C207.807,-910.2486 264.7184,-905.6299 312.2096,-901.7758"/>
<polygon fill="#000000" stroke="#000000" points="312.5065,-905.2633 322.1906,-900.9658 311.9402,-898.2862 312.5065,-905.2633"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Message).Agree -->
<g id="node30" class="node">
<title>(*github.com/eatMoreApple/openwechat.Message).Agree</title>
<g id="a_node30"><a xlink:title="(*github.com/eatMoreApple/openwechat.Message).Agree | defined in message.go:277&#10;at message.go:278: calling [(*github.com/eatMoreApple/openwechat.Message).IsFriendAdd]&#10;at message.go:285: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="127.0792" cy="-562.8" rx="27" ry="18"/>
<text text-anchor="middle" x="127.0792" y="-558.6" font-family="Verdana" font-size="14.00" fill="#000000">Agree</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Message).Agree&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser -->
<g id="edge31" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Message).Agree-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser</title>
<g id="a_edge31"><a xlink:title="at message.go:285: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser]">
<path fill="none" stroke="#000000" d="M154.3133,-562.8C192.9912,-562.8 265.3402,-562.8 321.2272,-562.8"/>
<polygon fill="#000000" stroke="#000000" points="321.4591,-566.3001 331.4591,-562.8 321.459,-559.3001 321.4591,-566.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).SendImageToFriend -->
<g id="node31" class="node">
<title>(*github.com/eatMoreApple/openwechat.Self).SendImageToFriend</title>
<g id="a_node31"><a xlink:title="(*github.com/eatMoreApple/openwechat.Self).SendImageToFriend | defined in user.go:237&#10;at user.go:240: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="127.0792" cy="-855.8" rx="69.6611" ry="18"/>
<text text-anchor="middle" x="127.0792" y="-851.6" font-family="Verdana" font-size="14.00" fill="#000000">SendImageToFriend</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).SendImageToFriend&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg -->
<g id="edge63" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Self).SendImageToFriend-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg</title>
<g id="a_edge63"><a xlink:title="at user.go:240: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg]">
<path fill="none" stroke="#000000" d="M187.9165,-864.5524C227.081,-870.1868 278.347,-877.5622 320.4508,-883.6194"/>
<polygon fill="#000000" stroke="#000000" points="319.9929,-887.0895 330.3894,-885.0492 320.9898,-880.1608 319.9929,-887.0895"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).RevokeMessage -->
<g id="node32" class="node">
<title>(*github.com/eatMoreApple/openwechat.Self).RevokeMessage</title>
<g id="a_node32"><a xlink:title="(*github.com/eatMoreApple/openwechat.Self).RevokeMessage | defined in user.go:353&#10;at user.go:354: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="127.0792" cy="-501.8" rx="56.2768" ry="18"/>
<text text-anchor="middle" x="127.0792" y="-497.6" font-family="Verdana" font-size="14.00" fill="#000000">RevokeMessage</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).RevokeMessage&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg -->
<g id="edge30" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Self).RevokeMessage-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg</title>
<g id="a_edge30"><a xlink:title="at user.go:354: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg]">
<path fill="none" stroke="#000000" d="M183.578,-501.8C222.6522,-501.8 275.1977,-501.8 318.5121,-501.8"/>
<polygon fill="#000000" stroke="#000000" points="318.7398,-505.3001 328.7398,-501.8 318.7397,-498.3001 318.7398,-505.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).updateMembers -->
<g id="node33" class="node">
<title>(*github.com/eatMoreApple/openwechat.Self).updateMembers</title>
<g id="a_node33"><a xlink:title="(*github.com/eatMoreApple/openwechat.Self).updateMembers | defined in user.go:137&#10;at user.go:139: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact]&#10;at user.go:143: calling [(github.com/eatMoreApple/openwechat.Members).SetOwner]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width=".5" cx="398.1665" cy="-1260.8" rx="55.5196" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-1256.6" font-family="Verdana" font-size="14.00" fill="#000000">updateMembers</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).updateMembers&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact -->
<g id="edge67" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Self).updateMembers-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact</title>
<g id="a_edge67"><a xlink:title="at user.go:139: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact]">
<path fill="none" stroke="#000000" d="M454.0744,-1260.8C532.1816,-1260.8 674.2637,-1260.8 762.414,-1260.8"/>
<polygon fill="#000000" stroke="#000000" points="762.6237,-1264.3001 772.6236,-1260.8 762.6236,-1257.3001 762.6237,-1264.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).sendMessageToUser -->
<g id="node34" class="node">
<title>(*github.com/eatMoreApple/openwechat.Self).sendMessageToUser</title>
<g id="a_node34"><a xlink:title="(*github.com/eatMoreApple/openwechat.Self).sendMessageToUser | defined in user.go:212&#10;at user.go:217: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width=".5" cx="398.1665" cy="-684.8" rx="70.3991" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-680.6" font-family="Verdana" font-size="14.00" fill="#000000">sendMessageToUser</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).sendMessageToUser&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg -->
<g id="edge1" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Self).sendMessageToUser-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg</title>
<g id="a_edge1"><a xlink:title="at user.go:217: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg]">
<path fill="none" stroke="#000000" d="M469.0905,-684.8C551.444,-684.8 686.4764,-684.8 768.784,-684.8"/>
<polygon fill="#000000" stroke="#000000" points="768.8001,-688.3001 778.8001,-684.8 768.8001,-681.3001 768.8001,-688.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).forwardMessage -->
<g id="node35" class="node">
<title>(*github.com/eatMoreApple/openwechat.Self).forwardMessage</title>
<g id="a_node35"><a xlink:title="(*github.com/eatMoreApple/openwechat.Self).forwardMessage | defined in user.go:358&#10;at user.go:374: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg]&#10;at user.go:382: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg]&#10;at user.go:366: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width=".5" cx="398.1665" cy="-623.8" rx="57.0157" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-619.6" font-family="Verdana" font-size="14.00" fill="#000000">forwardMessage</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).forwardMessage&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg -->
<g id="edge44" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Self).forwardMessage-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg</title>
<g id="a_edge44"><a xlink:title="at user.go:366: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg]">
<path fill="none" stroke="#000000" d="M446.9726,-633.2312C482.2266,-639.8392 531.029,-648.5682 574.1746,-654.8 641.0091,-664.4533 717.6884,-672.8312 771.389,-678.2613"/>
<polygon fill="#000000" stroke="#000000" points="771.1771,-681.7575 781.4767,-679.274 771.8764,-674.7925 771.1771,-681.7575"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).AddFriendsIntoGroup -->
<g id="node36" class="node">
<title>(*github.com/eatMoreApple/openwechat.Self).AddFriendsIntoGroup</title>
<g id="a_node36"><a xlink:title="(*github.com/eatMoreApple/openwechat.Self).AddFriendsIntoGroup | defined in user.go:259&#10;at user.go:278: calling [(*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom]&#10;at user.go:272: calling [(github.com/eatMoreApple/openwechat.Friend).String]&#10;at user.go:264: calling [(*github.com/eatMoreApple/openwechat.Group).Members]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="127.0792" cy="-379.8" rx="74.721" ry="18"/>
<text text-anchor="middle" x="127.0792" y="-375.6" font-family="Verdana" font-size="14.00" fill="#000000">AddFriendsIntoGroup</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).AddFriendsIntoGroup&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom -->
<g id="edge40" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Self).AddFriendsIntoGroup-&gt;(*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom</title>
<g id="a_edge40"><a xlink:title="at user.go:278: calling [(*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom]">
<path fill="none" stroke="#000000" d="M202.2321,-379.8C233.0468,-379.8 269.0959,-379.8 301.8123,-379.8"/>
<polygon fill="#000000" stroke="#000000" points="301.8492,-383.3001 311.8492,-379.8 301.8492,-376.3001 301.8492,-383.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).SendImageToGroup -->
<g id="node37" class="node">
<title>(*github.com/eatMoreApple/openwechat.Self).SendImageToGroup</title>
<g id="a_node37"><a xlink:title="(*github.com/eatMoreApple/openwechat.Self).SendImageToGroup | defined in user.go:335&#10;at user.go:338: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="127.0792" cy="-977.8" rx="69.278" ry="18"/>
<text text-anchor="middle" x="127.0792" y="-973.6" font-family="Verdana" font-size="14.00" fill="#000000">SendImageToGroup</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).SendImageToGroup&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg -->
<g id="edge36" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Self).SendImageToGroup-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg</title>
<g id="a_edge36"><a xlink:title="at user.go:338: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg]">
<path fill="none" stroke="#000000" d="M171.6397,-963.9115C205.4989,-953.3832 253.2348,-938.5933 295.1584,-925.8 309.6716,-921.3712 325.3486,-916.6309 339.9886,-912.2231"/>
<polygon fill="#000000" stroke="#000000" points="341.3632,-915.4646 349.9313,-909.2325 339.3469,-908.7612 341.3632,-915.4646"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).SendFileToGroup -->
<g id="node38" class="node">
<title>(*github.com/eatMoreApple/openwechat.Self).SendFileToGroup</title>
<g id="a_node38"><a xlink:title="(*github.com/eatMoreApple/openwechat.Self).SendFileToGroup | defined in user.go:342&#10;at user.go:345: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="127.0792" cy="-257.8" rx="61.8511" ry="18"/>
<text text-anchor="middle" x="127.0792" y="-253.6" font-family="Verdana" font-size="14.00" fill="#000000">SendFileToGroup</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).SendFileToGroup&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile -->
<g id="edge59" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Self).SendFileToGroup-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile</title>
<g id="a_edge59"><a xlink:title="at user.go:345: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile]">
<path fill="none" stroke="#000000" d="M176.1711,-246.7534C222.4201,-236.3464 291.716,-220.7535 340.5602,-209.7626"/>
<polygon fill="#000000" stroke="#000000" points="341.3622,-213.1697 350.3499,-207.5597 339.8254,-206.3404 341.3622,-213.1697"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).SendFileToFriend -->
<g id="node39" class="node">
<title>(*github.com/eatMoreApple/openwechat.Self).SendFileToFriend</title>
<g id="a_node39"><a xlink:title="(*github.com/eatMoreApple/openwechat.Self).SendFileToFriend | defined in user.go:244&#10;at user.go:247: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="127.0792" cy="-196.8" rx="62.2341" ry="18"/>
<text text-anchor="middle" x="127.0792" y="-192.6" font-family="Verdana" font-size="14.00" fill="#000000">SendFileToFriend</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).SendFileToFriend&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile -->
<g id="edge68" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Self).SendFileToFriend-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile</title>
<g id="a_edge68"><a xlink:title="at user.go:247: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile]">
<path fill="none" stroke="#000000" d="M189.2721,-196.8C230.9501,-196.8 285.8688,-196.8 328.9356,-196.8"/>
<polygon fill="#000000" stroke="#000000" points="329.0521,-200.3001 339.052,-196.8 329.052,-193.3001 329.0521,-200.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).RemoveMemberFromGroup -->
<g id="node40" class="node">
<title>(*github.com/eatMoreApple/openwechat.Self).RemoveMemberFromGroup</title>
<g id="a_node40"><a xlink:title="(*github.com/eatMoreApple/openwechat.Self).RemoveMemberFromGroup | defined in user.go:284&#10;at user.go:291: calling [(*github.com/eatMoreApple/openwechat.Group).Members]&#10;at user.go:309: calling [(*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="127.0792" cy="-318.8" rx="95.1584" ry="18"/>
<text text-anchor="middle" x="127.0792" y="-314.6" font-family="Verdana" font-size="14.00" fill="#000000">RemoveMemberFromGroup</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).RemoveMemberFromGroup&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom -->
<g id="edge72" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Self).RemoveMemberFromGroup-&gt;(*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom</title>
<g id="a_edge72"><a xlink:title="at user.go:309: calling [(*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom]">
<path fill="none" stroke="#000000" d="M222.2732,-318.8C242.4637,-318.8 263.9685,-318.8 284.7591,-318.8"/>
<polygon fill="#000000" stroke="#000000" points="284.8992,-322.3001 294.8991,-318.8 284.8991,-315.3001 284.8992,-322.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).SetRemarkNameToFriend -->
<g id="node41" class="node">
<title>(*github.com/eatMoreApple/openwechat.Self).SetRemarkNameToFriend</title>
<g id="a_node41"><a xlink:title="(*github.com/eatMoreApple/openwechat.Self).SetRemarkNameToFriend | defined in user.go:252&#10;at user.go:254: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxOplog]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="127.0792" cy="-440.8" rx="88.0814" ry="18"/>
<text text-anchor="middle" x="127.0792" y="-436.6" font-family="Verdana" font-size="14.00" fill="#000000">SetRemarkNameToFriend</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.Self).SetRemarkNameToFriend&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxOplog -->
<g id="edge37" class="edge">
<title>(*github.com/eatMoreApple/openwechat.Self).SetRemarkNameToFriend-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxOplog</title>
<g id="a_edge37"><a xlink:title="at user.go:254: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxOplog]">
<path fill="none" stroke="#000000" d="M215.4682,-440.8C255.2657,-440.8 301.259,-440.8 337.1421,-440.8"/>
<polygon fill="#000000" stroke="#000000" points="337.4572,-444.3001 347.4572,-440.8 337.4572,-437.3001 337.4572,-444.3001"/>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.User).Detail -->
<g id="node42" class="node">
<title>(*github.com/eatMoreApple/openwechat.User).Detail</title>
<g id="a_node42"><a xlink:title="(*github.com/eatMoreApple/openwechat.User).Detail | defined in user.go:83&#10;at user.go:89: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact]&#10;at user.go:93: calling [(github.com/eatMoreApple/openwechat.Members).First]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width="1.5" cx="398.1665" cy="-1016.8" rx="27" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-1012.6" font-family="Verdana" font-size="14.00" fill="#000000">Detail</text>
</a>
</g>
</g>
<!-- (*github.com/eatMoreApple/openwechat.User).Detail&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact -->
<g id="edge54" class="edge">
<title>(*github.com/eatMoreApple/openwechat.User).Detail-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact</title>
<g id="a_edge54"><a xlink:title="at user.go:89: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact]">
<path fill="none" stroke="#000000" d="M425.447,-1016.8C487.5087,-1016.8 641.7458,-1016.8 743.4736,-1016.8"/>
<polygon fill="#000000" stroke="#000000" points="743.763,-1020.3001 753.763,-1016.8 743.763,-1013.3001 743.763,-1020.3001"/>
</a>
</g>
</g>
<!-- (github.com/eatMoreApple/openwechat.Members).detail -->
<g id="node43" class="node">
<title>(github.com/eatMoreApple/openwechat.Members).detail</title>
<g id="a_node43"><a xlink:title="(github.com/eatMoreApple/openwechat.Members).detail | defined in user.go:518&#10;at user.go:542: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact]&#10;at user.go:554: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact]&#10;at user.go:522: calling [(github.com/eatMoreApple/openwechat.Members).Count]&#10;at user.go:561: calling [(github.com/eatMoreApple/openwechat.Members).SetOwner]">
<ellipse fill="#ffe4b5" stroke="#000000" stroke-width=".5" cx="398.1665" cy="-955.8" rx="27" ry="18"/>
<text text-anchor="middle" x="398.1665" y="-951.6" font-family="Verdana" font-size="14.00" fill="#000000">detail</text>
</a>
</g>
</g>
<!-- (github.com/eatMoreApple/openwechat.Members).detail&#45;&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact -->
<g id="edge8" class="edge">
<title>(github.com/eatMoreApple/openwechat.Members).detail-&gt;(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact</title>
<g id="a_edge8"><a xlink:title="at user.go:542: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact]&#10;at user.go:554: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact]">
<path fill="none" stroke="#000000" d="M424.3264,-960.9287C458.6327,-967.5346 520.7416,-979.0823 574.1746,-986.8 633.2324,-995.3301 699.9773,-1002.8643 751.7621,-1008.2487"/>
<polygon fill="#000000" stroke="#000000" points="751.6062,-1011.7511 761.9128,-1009.2966 752.3251,-1004.7881 751.6062,-1011.7511"/>
</a>
</g>
</g>
</g>
</svg>
Display the source blob
Display the rendered blob
Raw
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
digraph gocallvis {
label="github.com/suntong/owc-insight";
labeljust="l";
fontname="Arial";
fontsize="14";
rankdir="LR";
bgcolor="lightgray";
style="solid";
penwidth="0.5";
pad="0.0";
nodesep="0.35";
node [shape="ellipse" style="filled" fillcolor="honeydew" fontname="Verdana" penwidth="1.0" margin="0.05,0.0"];
edge [minlen="2"]
subgraph "cluster_focus" {
bgcolor="white";
label="";
labelloc="t";
labeljust="c";
fontsize="18";
subgraph "cluster_github.com/eatMoreApple/openwechat" {
fontsize="16";
label="openwechat";
URL="/?f=github.com/eatMoreApple/openwechat";
tooltip="package: github.com/eatMoreApple/openwechat";
penwidth="0.8";
style="filled";
fillcolor="lightyellow";
fontname="Tahoma bold";
rank="sink";
"github.com/eatMoreApple/openwechat.getResponseErrorWithRetCode" [ fillcolor="moccasin" label="getResponseErrorWithRetCode" penwidth="0.5" tooltip="github.com/eatMoreApple/openwechat.getResponseErrorWithRetCode | defined in items.go:55" ]
"github.com/eatMoreApple/openwechat.GetRandomDeviceId" [ fillcolor="moccasin" label="GetRandomDeviceId" penwidth="1.5" tooltip="github.com/eatMoreApple/openwechat.GetRandomDeviceId | defined in parser.go:25" ]
"github.com/eatMoreApple/openwechat.GetFileContentType" [ fillcolor="moccasin" label="GetFileContentType" penwidth="1.5" tooltip="github.com/eatMoreApple/openwechat.GetFileContentType | defined in parser.go:62" ]
"github.com/eatMoreApple/openwechat.getMessageType" [ fillcolor="moccasin" label="getMessageType" penwidth="0.5" tooltip="github.com/eatMoreApple/openwechat.getMessageType | defined in parser.go:85\nat parser.go:86: calling [github.com/eatMoreApple/openwechat.getFileExt]" ]
"github.com/eatMoreApple/openwechat.getFileExt" [ fillcolor="moccasin" label="getFileExt" penwidth="0.5" tooltip="github.com/eatMoreApple/openwechat.getFileExt | defined in parser.go:70" ]
"github.com/eatMoreApple/openwechat.getWebWxDataTicket" [ fillcolor="moccasin" label="getWebWxDataTicket" penwidth="0.5" tooltip="github.com/eatMoreApple/openwechat.getWebWxDataTicket | defined in parser.go:36" ]
"github.com/eatMoreApple/openwechat.parseBaseResponseError" [ fillcolor="moccasin" label="parseBaseResponseError" penwidth="0.5" tooltip="github.com/eatMoreApple/openwechat.parseBaseResponseError | defined in caller.go:331\nat caller.go:334: calling [github.com/eatMoreApple/openwechat.scanJson]\nat caller.go:337: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]" ]
"github.com/eatMoreApple/openwechat.scanJson" [ tooltip="github.com/eatMoreApple/openwechat.scanJson | defined in parser.go:103" fillcolor="moccasin" label="scanJson" penwidth="0.5" ]
"github.com/eatMoreApple/openwechat.NewMediaSendMessage" [ tooltip="github.com/eatMoreApple/openwechat.NewMediaSendMessage | defined in message.go:362\nat message.go:363: calling [github.com/eatMoreApple/openwechat.NewSendMessage]" fillcolor="moccasin" label="NewMediaSendMessage" penwidth="1.5" ]
"github.com/eatMoreApple/openwechat.NewSendMessage" [ fillcolor="moccasin" label="NewSendMessage" penwidth="1.5" tooltip="github.com/eatMoreApple/openwechat.NewSendMessage | defined in message.go:343" ]
"github.com/eatMoreApple/openwechat.ToBuffer" [ penwidth="1.5" tooltip="github.com/eatMoreApple/openwechat.ToBuffer | defined in parser.go:15" fillcolor="moccasin" label="ToBuffer" ]
"github.com/eatMoreApple/openwechat.parseMessageResponseError" [ penwidth="0.5" tooltip="github.com/eatMoreApple/openwechat.parseMessageResponseError | defined in caller.go:343\nat caller.go:352: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]\nat caller.go:348: calling [github.com/eatMoreApple/openwechat.scanJson]" fillcolor="moccasin" label="parseMessageResponseError" ]
"github.com/eatMoreApple/openwechat.getSuccessSentMessage" [ label="getSuccessSentMessage" penwidth="0.5" tooltip="github.com/eatMoreApple/openwechat.getSuccessSentMessage | defined in caller.go:360\nat caller.go:365: calling [github.com/eatMoreApple/openwechat.parseMessageResponseError]" fillcolor="moccasin" ]
"github.com/eatMoreApple/openwechat.NewUserDetailItemList" [ fillcolor="moccasin" label="NewUserDetailItemList" penwidth="1.5" tooltip="github.com/eatMoreApple/openwechat.NewUserDetailItemList | defined in items.go:122" ]
"github.com/eatMoreApple/openwechat.scanXml" [ penwidth="0.5" tooltip="github.com/eatMoreApple/openwechat.scanXml | defined in parser.go:95" fillcolor="moccasin" label="scanXml" ]
"github.com/eatMoreApple/openwechat.XmlFormString" [ fillcolor="moccasin" label="XmlFormString" penwidth="1.5" tooltip="github.com/eatMoreApple/openwechat.XmlFormString | defined in parser.go:46" ]
"github.com/eatMoreApple/openwechat.NewTextSendMessage" [ label="NewTextSendMessage" penwidth="1.5" tooltip="github.com/eatMoreApple/openwechat.NewTextSendMessage | defined in message.go:357\nat message.go:358: calling [github.com/eatMoreApple/openwechat.NewSendMessage]" fillcolor="moccasin" ]
"github.com/eatMoreApple/openwechat.getTotalDuration" [ fillcolor="moccasin" label="getTotalDuration" penwidth="0.5" tooltip="github.com/eatMoreApple/openwechat.getTotalDuration | defined in parser.go:53" ]
"github.com/eatMoreApple/openwechat.NewFileAppMessage" [ label="NewFileAppMessage" penwidth="1.5" tooltip="github.com/eatMoreApple/openwechat.NewFileAppMessage | defined in message.go:507\nat message.go:512: calling [github.com/eatMoreApple/openwechat.getFileExt]" fillcolor="moccasin" ]
"github.com/eatMoreApple/openwechat.DefaultClient" [ fillcolor="moccasin" label="DefaultClient" penwidth="1.5" tooltip="github.com/eatMoreApple/openwechat.DefaultClient | defined in client.go:55\nat client.go:63: calling [github.com/eatMoreApple/openwechat.NewClient]\nat client.go:64: calling [(*github.com/eatMoreApple/openwechat.Client).AddHttpHook]" ]
"github.com/eatMoreApple/openwechat.NewClient" [ fillcolor="moccasin" label="NewClient" penwidth="1.5" tooltip="github.com/eatMoreApple/openwechat.NewClient | defined in client.go:49" ]
"github.com/eatMoreApple/openwechat.DefaultCaller" [ fillcolor="moccasin" label="DefaultCaller" penwidth="1.5" tooltip="github.com/eatMoreApple/openwechat.DefaultCaller | defined in caller.go:24\nat caller.go:25: calling [github.com/eatMoreApple/openwechat.DefaultClient]\nat caller.go:25: calling [github.com/eatMoreApple/openwechat.NewCaller]" ]
"github.com/eatMoreApple/openwechat.NewCaller" [ penwidth="1.5" tooltip="github.com/eatMoreApple/openwechat.NewCaller | defined in caller.go:19" fillcolor="moccasin" label="NewCaller" ]
"github.com/eatMoreApple/openwechat.DefaultBot" [ fillcolor="moccasin" label="DefaultBot" penwidth="1.5" tooltip="github.com/eatMoreApple/openwechat.DefaultBot | defined in bot.go:320\nat bot.go:327: calling [github.com/eatMoreApple/openwechat.DefaultCaller]\nat bot.go:329: calling [github.com/eatMoreApple/openwechat.NewBot]" ]
"github.com/eatMoreApple/openwechat.NewBot" [ fillcolor="moccasin" label="NewBot" penwidth="1.5" tooltip="github.com/eatMoreApple/openwechat.NewBot | defined in bot.go:312" ]
"github.com/eatMoreApple/openwechat.NewFriendHelper" [ fillcolor="moccasin" label="NewFriendHelper" penwidth="1.5" tooltip="github.com/eatMoreApple/openwechat.NewFriendHelper | defined in user.go:571" ]
subgraph "cluster_*github.com/eatMoreApple/openwechat.Bot" {
style="rounded,filled";
fillcolor="wheat2";
label="(*Bot)";
tooltip="type: *github.com/eatMoreApple/openwechat.Bot";
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
labelloc="b";
"(*github.com/eatMoreApple/openwechat.Bot).handleLogin" [ label="handleLogin" penwidth="0.5" tooltip="(*github.com/eatMoreApple/openwechat.Bot).handleLogin | defined in bot.go:157\nat bot.go:184: calling [(*github.com/eatMoreApple/openwechat.Bot).webInit]\nat bot.go:179: calling [(*github.com/eatMoreApple/openwechat.Bot).DumpHotReloadStorage]\nat bot.go:159: calling [(*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo]\nat bot.go:171: calling [github.com/eatMoreApple/openwechat.GetRandomDeviceId]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Bot).DumpHotReloadStorage" [ fillcolor="moccasin" label="DumpHotReloadStorage" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Bot).DumpHotReloadStorage | defined in bot.go:297\nat bot.go:301: calling [(*github.com/eatMoreApple/openwechat.Client).GetCookieMap]\nat bot.go:308: calling [(*github.com/eatMoreApple/openwechat.JsonFileHotReloadStorage).Dump]" ]
"(*github.com/eatMoreApple/openwechat.Bot).webInit" [ label="webInit" penwidth="0.5" tooltip="(*github.com/eatMoreApple/openwechat.Bot).webInit | defined in bot.go:188\nat bot.go:202: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify]\nat bot.go:192: calling [(*github.com/eatMoreApple/openwechat.Caller).WebInit]\nat bot.go:206: calling [(*github.com/eatMoreApple/openwechat.Bot).webInit$1]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Bot).asyncCall" [ label="asyncCall" penwidth="0.5" tooltip="(*github.com/eatMoreApple/openwechat.Bot).asyncCall | defined in bot.go:219\nat bot.go:231: calling [(*github.com/eatMoreApple/openwechat.SyncCheckResponse).Success]\nat bot.go:235: calling [(*github.com/eatMoreApple/openwechat.SyncCheckResponse).NorMal]\nat bot.go:236: calling [(*github.com/eatMoreApple/openwechat.Bot).getNewWechatMessage]\nat bot.go:226: calling [(*github.com/eatMoreApple/openwechat.Caller).SyncCheck]\nat bot.go:224: calling [(*github.com/eatMoreApple/openwechat.Bot).Alive]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Bot).Alive" [ penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Bot).Alive | defined in bot.go:28" fillcolor="moccasin" label="Alive" ]
"(*github.com/eatMoreApple/openwechat.Bot).getNewWechatMessage" [ label="getNewWechatMessage" penwidth="0.5" tooltip="(*github.com/eatMoreApple/openwechat.Bot).getNewWechatMessage | defined in bot.go:253\nat bot.go:254: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSync]\nat bot.go:263: calling [(*github.com/eatMoreApple/openwechat.Message).init]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Bot).webInit$1" [ style="dotted,filled" tooltip="(*github.com/eatMoreApple/openwechat.Bot).webInit$1 | defined in bot.go:206\nat bot.go:211: calling [(*github.com/eatMoreApple/openwechat.Bot).stopAsyncCALL]\nat bot.go:210: calling [(*github.com/eatMoreApple/openwechat.Bot).asyncCall]" fillcolor="moccasin" label="webInit$1" ]
"(*github.com/eatMoreApple/openwechat.Bot).Logout" [ fillcolor="moccasin" label="Logout" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Bot).Logout | defined in bot.go:141\nat bot.go:142: calling [(*github.com/eatMoreApple/openwechat.Bot).Alive]\nat bot.go:147: calling [(*github.com/eatMoreApple/openwechat.Caller).Logout]\nat bot.go:150: calling [(*github.com/eatMoreApple/openwechat.Bot).stopAsyncCALL]" ]
"(*github.com/eatMoreApple/openwechat.Bot).stopAsyncCALL" [ fillcolor="moccasin" label="stopAsyncCALL" penwidth="0.5" tooltip="(*github.com/eatMoreApple/openwechat.Bot).stopAsyncCALL | defined in bot.go:245\nat bot.go:249: calling [(*github.com/eatMoreApple/openwechat.SyncCheckResponse).Error]" ]
"(*github.com/eatMoreApple/openwechat.Bot).hotLoginInit" [ penwidth="0.5" tooltip="(*github.com/eatMoreApple/openwechat.Bot).hotLoginInit | defined in bot.go:87\nat bot.go:88: calling [(*github.com/eatMoreApple/openwechat.JsonFileHotReloadStorage).GetHotReloadStorageItem]" fillcolor="moccasin" label="hotLoginInit" ]
"(*github.com/eatMoreApple/openwechat.Bot).Login" [ label="Login" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Bot).Login | defined in bot.go:105\nat bot.go:116: calling [(*github.com/eatMoreApple/openwechat.Caller).CheckLogin]\nat bot.go:126: calling [(*github.com/eatMoreApple/openwechat.Bot).handleLogin]\nat bot.go:106: calling [(*github.com/eatMoreApple/openwechat.Caller).GetLoginUUID]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Bot).HotLogin" [ tooltip="(*github.com/eatMoreApple/openwechat.Bot).HotLogin | defined in bot.go:58\nat bot.go:67: calling [(*github.com/eatMoreApple/openwechat.Bot).Login]\nat bot.go:79: calling [(*github.com/eatMoreApple/openwechat.Bot).Login]\nat bot.go:66: calling [(*github.com/eatMoreApple/openwechat.JsonFileHotReloadStorage).Load]\nat bot.go:76: calling [(*github.com/eatMoreApple/openwechat.Bot).webInit]\nat bot.go:70: calling [(*github.com/eatMoreApple/openwechat.Bot).hotLoginInit]" fillcolor="moccasin" label="HotLogin" penwidth="1.5" ]
}
subgraph "cluster_*github.com/eatMoreApple/openwechat.Caller" {
style="rounded,filled";
fillcolor="wheat2";
label="(*Caller)";
tooltip="type: *github.com/eatMoreApple/openwechat.Caller";
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
labelloc="b";
"(*github.com/eatMoreApple/openwechat.Caller).UploadMedia" [ fillcolor="moccasin" label="UploadMedia" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).UploadMedia | defined in caller.go:220\nat caller.go:231: calling [github.com/eatMoreApple/openwechat.scanJson]\nat caller.go:234: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]\nat caller.go:222: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg" [ fillcolor="moccasin" label="WebWxSendImageMsg" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg | defined in caller.go:244\nat caller.go:254: calling [github.com/eatMoreApple/openwechat.getSuccessSentMessage]\nat caller.go:246: calling [(*github.com/eatMoreApple/openwechat.Caller).UploadMedia]\nat caller.go:251: calling [github.com/eatMoreApple/openwechat.NewMediaSendMessage]\nat caller.go:253: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact" [ fillcolor="moccasin" label="WebWxBatchGetContact" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact | defined in caller.go:175\nat caller.go:182: calling [github.com/eatMoreApple/openwechat.scanJson]\nat caller.go:176: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxBatchGetContact]\nat caller.go:185: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]" ]
"(*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo" [ label="GetLoginInfo" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo | defined in caller.go:73\nat caller.go:84: calling [(*github.com/eatMoreApple/openwechat.Client).GetLoginInfo]\nat caller.go:96: calling [github.com/eatMoreApple/openwechat.scanXml]\nat caller.go:99: calling [(github.com/eatMoreApple/openwechat.LoginInfo).Ok]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebInit" [ penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).WebInit | defined in caller.go:106\nat caller.go:107: calling [(*github.com/eatMoreApple/openwechat.Client).WebInit]\nat caller.go:113: calling [github.com/eatMoreApple/openwechat.scanJson]" fillcolor="moccasin" label="WebInit" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify" [ fillcolor="moccasin" label="WebWxStatusNotify" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify | defined in caller.go:120\nat caller.go:130: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]\nat caller.go:121: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxStatusNotify]\nat caller.go:127: calling [github.com/eatMoreApple/openwechat.scanJson]" ]
"(*github.com/eatMoreApple/openwechat.Caller).SyncCheck" [ fillcolor="moccasin" label="SyncCheck" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).SyncCheck | defined in caller.go:137\nat caller.go:138: calling [(*github.com/eatMoreApple/openwechat.Client).SyncCheck]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSync" [ fillcolor="moccasin" label="WebWxSync" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).WebWxSync | defined in caller.go:192\nat caller.go:193: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSync]\nat caller.go:199: calling [github.com/eatMoreApple/openwechat.scanJson]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg" [ fillcolor="moccasin" label="WebWxSendMsg" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg | defined in caller.go:206\nat caller.go:208: calling [github.com/eatMoreApple/openwechat.getSuccessSentMessage]\nat caller.go:207: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsg]" ]
"(*github.com/eatMoreApple/openwechat.Caller).Logout" [ fillcolor="moccasin" label="Logout" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).Logout | defined in caller.go:280\nat caller.go:281: calling [(*github.com/eatMoreApple/openwechat.Client).Logout]\nat caller.go:285: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg" [ fillcolor="moccasin" label="WebWxRevokeMsg" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg | defined in caller.go:322\nat caller.go:327: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]\nat caller.go:323: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxRevokeMsg]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact" [ fillcolor="moccasin" label="WebWxGetContact" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact | defined in caller.go:157\nat caller.go:164: calling [github.com/eatMoreApple/openwechat.scanJson]\nat caller.go:167: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]\nat caller.go:158: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxGetContact]" ]
"(*github.com/eatMoreApple/openwechat.Caller).GetLoginUUID" [ fillcolor="moccasin" label="GetLoginUUID" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).GetLoginUUID | defined in caller.go:29\nat caller.go:30: calling [(*github.com/eatMoreApple/openwechat.Client).GetLoginUUID]" ]
"(*github.com/eatMoreApple/openwechat.Caller).CheckLogin" [ fillcolor="moccasin" label="CheckLogin" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).CheckLogin | defined in caller.go:51\nat caller.go:52: calling [(*github.com/eatMoreApple/openwechat.Client).CheckLogin]" ]
"(*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom" [ fillcolor="moccasin" label="RemoveFriendFromChatRoom" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom | defined in caller.go:301\nat caller.go:309: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]\nat caller.go:305: calling [(*github.com/eatMoreApple/openwechat.Client).RemoveMemberFromChatRoom]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile" [ fillcolor="moccasin" label="WebWxSendFile" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile | defined in caller.go:257\nat caller.go:269: calling [github.com/eatMoreApple/openwechat.NewSendMessage]\nat caller.go:264: calling [github.com/eatMoreApple/openwechat.NewFileAppMessage]\nat caller.go:258: calling [(*github.com/eatMoreApple/openwechat.Caller).UploadMedia]\nat caller.go:265: calling [(github.com/eatMoreApple/openwechat.appmsg).XmlByte]\nat caller.go:270: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg" [ fillcolor="moccasin" label="WebWxSendAppMsg" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg | defined in caller.go:274\nat caller.go:275: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg]\nat caller.go:276: calling [github.com/eatMoreApple/openwechat.getSuccessSentMessage]" ]
"(*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom" [ fillcolor="moccasin" label="AddFriendIntoChatRoom" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom | defined in caller.go:289\nat caller.go:297: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]\nat caller.go:293: calling [(*github.com/eatMoreApple/openwechat.Client).AddMemberIntoChatRoom]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxOplog" [ penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).WebWxOplog | defined in caller.go:212\nat caller.go:213: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxOplog]\nat caller.go:217: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]" fillcolor="moccasin" label="WebWxOplog" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser" [ fillcolor="moccasin" label="WebWxVerifyUser" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser | defined in caller.go:313\nat caller.go:318: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]\nat caller.go:314: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxVerifyUser]" ]
}
subgraph "cluster_*github.com/eatMoreApple/openwechat.Client" {
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
labelloc="b";
style="rounded,filled";
fillcolor="wheat2";
label="(*Client)";
tooltip="type: *github.com/eatMoreApple/openwechat.Client";
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetVoice" [ label="WebWxGetVoice" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).WebWxGetVoice | defined in client.go:534\nat client.go:535: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]\nat client.go:541: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Client).do" [ fillcolor="moccasin" label="do" penwidth="0.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).do | defined in client.go:72\nat client.go:74: calling [(github.com/eatMoreApple/openwechat.UserAgentHook).BeforeRequest]\nat client.go:78: calling [(github.com/eatMoreApple/openwechat.UserAgentHook).AfterRequest]" ]
"(*github.com/eatMoreApple/openwechat.Client).Do" [ fillcolor="moccasin" label="Do" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).Do | defined in client.go:96\nat client.go:97: calling [(*github.com/eatMoreApple/openwechat.Client).do]\nat client.go:99: calling [(*github.com/eatMoreApple/openwechat.Client).setCookie]" ]
"(*github.com/eatMoreApple/openwechat.Client).setCookie" [ fillcolor="moccasin" label="setCookie" penwidth="0.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).setCookie | defined in client.go:83" ]
"(*github.com/eatMoreApple/openwechat.Client).SyncCheck" [ fillcolor="moccasin" label="SyncCheck" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).SyncCheck | defined in client.go:198\nat client.go:205: calling [github.com/eatMoreApple/openwechat.GetRandomDeviceId]\nat client.go:217: calling [(*github.com/eatMoreApple/openwechat.Client).Do]\nat client.go:199: calling [(github.com/eatMoreApple/openwechat.WechatDomain).SyncHost]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk" [ fillcolor="moccasin" label="WebWxUploadMediaByChunk" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk | defined in client.go:302\nat client.go:304: calling [github.com/eatMoreApple/openwechat.GetFileContentType]\nat client.go:440: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]\nat client.go:330: calling [github.com/eatMoreApple/openwechat.getMessageType]\nat client.go:434: calling [(*github.com/eatMoreApple/openwechat.Client).Do]\nat client.go:339: calling [github.com/eatMoreApple/openwechat.getWebWxDataTicket]\nat client.go:332: calling [(github.com/eatMoreApple/openwechat.WechatDomain).FileHost]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg" [ fillcolor="moccasin" label="WebWxSendMsgImg" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg | defined in client.go:452\nat client.go:454: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]\nat client.go:461: calling [(*github.com/eatMoreApple/openwechat.Client).sendMessage]" ]
"(*github.com/eatMoreApple/openwechat.Client).sendMessage" [ label="sendMessage" penwidth="0.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).sendMessage | defined in client.go:272\nat client.go:281: calling [(*github.com/eatMoreApple/openwechat.Client).Do]\nat client.go:278: calling [github.com/eatMoreApple/openwechat.ToBuffer]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxBatchGetContact" [ fillcolor="moccasin" label="WebWxBatchGetContact" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).WebWxBatchGetContact | defined in client.go:233\nat client.go:245: calling [github.com/eatMoreApple/openwechat.ToBuffer]\nat client.go:234: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]\nat client.go:239: calling [github.com/eatMoreApple/openwechat.NewUserDetailItemList]\nat client.go:248: calling [(*github.com/eatMoreApple/openwechat.Client).Do]\nat client.go:242: calling [(github.com/eatMoreApple/openwechat.Members).Count]" ]
"(*github.com/eatMoreApple/openwechat.Client).GetLoginInfo" [ penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).GetLoginInfo | defined in client.go:151\nat client.go:157: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" fillcolor="moccasin" label="GetLoginInfo" ]
"(*github.com/eatMoreApple/openwechat.Client).GetCookieMap" [ fillcolor="moccasin" label="GetCookieMap" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).GetCookieMap | defined in client.go:105" ]
"(*github.com/eatMoreApple/openwechat.Client).WebInit" [ label="WebInit" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).WebInit | defined in client.go:161\nat client.go:167: calling [github.com/eatMoreApple/openwechat.ToBuffer]\nat client.go:162: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]\nat client.go:173: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxStatusNotify" [ fillcolor="moccasin" label="WebWxStatusNotify" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).WebWxStatusNotify | defined in client.go:177\nat client.go:178: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]\nat client.go:194: calling [(*github.com/eatMoreApple/openwechat.Client).Do]\nat client.go:191: calling [github.com/eatMoreApple/openwechat.ToBuffer]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxSync" [ fillcolor="moccasin" label="WebWxSync" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).WebWxSync | defined in client.go:252\nat client.go:268: calling [(*github.com/eatMoreApple/openwechat.Client).Do]\nat client.go:253: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsg" [ fillcolor="moccasin" label="WebWxSendMsg" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsg | defined in client.go:285\nat client.go:287: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]\nat client.go:292: calling [(*github.com/eatMoreApple/openwechat.Client).sendMessage]" ]
"(*github.com/eatMoreApple/openwechat.Client).Logout" [ penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).Logout | defined in client.go:571\nat client.go:572: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]\nat client.go:579: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" fillcolor="moccasin" label="Logout" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxRevokeMsg" [ label="WebWxRevokeMsg" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).WebWxRevokeMsg | defined in client.go:628\nat client.go:636: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]\nat client.go:635: calling [github.com/eatMoreApple/openwechat.ToBuffer]\nat client.go:638: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg" [ label="WebWxSendAppMsg" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg | defined in client.go:465\nat client.go:472: calling [(*github.com/eatMoreApple/openwechat.Client).sendMessage]\nat client.go:467: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetContact" [ fillcolor="moccasin" label="WebWxGetContact" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).WebWxGetContact | defined in client.go:221\nat client.go:222: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]\nat client.go:229: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Client).GetLoginUUID" [ fillcolor="moccasin" label="GetLoginUUID" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).GetLoginUUID | defined in client.go:110\nat client.go:126: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Client).CheckLogin" [ fillcolor="moccasin" label="CheckLogin" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).CheckLogin | defined in client.go:136\nat client.go:147: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Client).RemoveMemberFromChatRoom" [ tooltip="(*github.com/eatMoreApple/openwechat.Client).RemoveMemberFromChatRoom | defined in client.go:606\nat client.go:624: calling [(*github.com/eatMoreApple/openwechat.Client).Do]\nat client.go:621: calling [github.com/eatMoreApple/openwechat.ToBuffer]\nat client.go:607: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" fillcolor="moccasin" label="RemoveMemberFromChatRoom" penwidth="1.5" ]
"(*github.com/eatMoreApple/openwechat.Client).AddHttpHook" [ fillcolor="moccasin" label="AddHttpHook" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).AddHttpHook | defined in client.go:68" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxVerifyUser" [ penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).WebWxVerifyUser | defined in client.go:494\nat client.go:518: calling [(*github.com/eatMoreApple/openwechat.Client).Do]\nat client.go:515: calling [github.com/eatMoreApple/openwechat.ToBuffer]\nat client.go:496: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" fillcolor="moccasin" label="WebWxVerifyUser" ]
"(*github.com/eatMoreApple/openwechat.Client).AddMemberIntoChatRoom" [ tooltip="(*github.com/eatMoreApple/openwechat.Client).AddMemberIntoChatRoom | defined in client.go:583\nat client.go:602: calling [(*github.com/eatMoreApple/openwechat.Client).Do]\nat client.go:599: calling [github.com/eatMoreApple/openwechat.ToBuffer]\nat client.go:584: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" fillcolor="moccasin" label="AddMemberIntoChatRoom" penwidth="1.5" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxOplog" [ fillcolor="moccasin" label="WebWxOplog" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).WebWxOplog | defined in client.go:476\nat client.go:487: calling [github.com/eatMoreApple/openwechat.ToBuffer]\nat client.go:490: calling [(*github.com/eatMoreApple/openwechat.Client).Do]\nat client.go:477: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetHeadImg" [ fillcolor="moccasin" label="WebWxGetHeadImg" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).WebWxGetHeadImg | defined in client.go:296\nat client.go:299: calling [(*github.com/eatMoreApple/openwechat.Client).Do]\nat client.go:297: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Client).webWxCheckUpload" [ tooltip="(*github.com/eatMoreApple/openwechat.Client).webWxCheckUpload | defined in client.go:642\nat client.go:653: calling [github.com/eatMoreApple/openwechat.ToBuffer]\nat client.go:643: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]\nat client.go:656: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" fillcolor="moccasin" label="webWxCheckUpload" penwidth="0.5" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetMsgImg" [ fillcolor="moccasin" label="WebWxGetMsgImg" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).WebWxGetMsgImg | defined in client.go:522\nat client.go:530: calling [(*github.com/eatMoreApple/openwechat.Client).Do]\nat client.go:523: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetVideo" [ fillcolor="moccasin" label="WebWxGetVideo" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).WebWxGetVideo | defined in client.go:545\nat client.go:552: calling [(*github.com/eatMoreApple/openwechat.Client).Do]\nat client.go:546: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetMedia" [ fillcolor="moccasin" label="WebWxGetMedia" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Client).WebWxGetMedia | defined in client.go:556\nat client.go:564: calling [github.com/eatMoreApple/openwechat.getWebWxDataTicket]\nat client.go:567: calling [(*github.com/eatMoreApple/openwechat.Client).Do]\nat client.go:557: calling [(github.com/eatMoreApple/openwechat.WechatDomain).FileHost]" ]
}
subgraph "cluster_*github.com/eatMoreApple/openwechat.Friend" {
labelloc="b";
style="rounded,filled";
fillcolor="wheat2";
label="(*Friend)";
tooltip="type: *github.com/eatMoreApple/openwechat.Friend";
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
"(*github.com/eatMoreApple/openwechat.Friend).SendText" [ penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Friend).SendText | defined in relations.go:27\nat relations.go:28: calling [(*github.com/eatMoreApple/openwechat.Self).SendTextToFriend]" fillcolor="moccasin" label="SendText" ]
"(*github.com/eatMoreApple/openwechat.Friend).SendFile" [ fillcolor="moccasin" label="SendFile" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Friend).SendFile | defined in relations.go:37\nat relations.go:38: calling [(*github.com/eatMoreApple/openwechat.Self).SendFileToFriend]" ]
"(*github.com/eatMoreApple/openwechat.Friend).SendImage" [ tooltip="(*github.com/eatMoreApple/openwechat.Friend).SendImage | defined in relations.go:32\nat relations.go:33: calling [(*github.com/eatMoreApple/openwechat.Self).SendImageToFriend]" fillcolor="moccasin" label="SendImage" penwidth="1.5" ]
"(*github.com/eatMoreApple/openwechat.Friend).SendMsg" [ fillcolor="moccasin" label="SendMsg" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Friend).SendMsg | defined in relations.go:22\nat relations.go:23: calling [(*github.com/eatMoreApple/openwechat.Self).SendMessageToFriend]" ]
"(*github.com/eatMoreApple/openwechat.Friend).SetRemarkName" [ label="SetRemarkName" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Friend).SetRemarkName | defined in relations.go:17\nat relations.go:18: calling [(*github.com/eatMoreApple/openwechat.Self).SetRemarkNameToFriend]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Friend).AddIntoGroup" [ fillcolor="moccasin" label="AddIntoGroup" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Friend).AddIntoGroup | defined in relations.go:42\nat relations.go:43: calling [(*github.com/eatMoreApple/openwechat.Self).AddFriendIntoManyGroups]" ]
}
subgraph "cluster_*github.com/eatMoreApple/openwechat.Group" {
label="(*Group)";
tooltip="type: *github.com/eatMoreApple/openwechat.Group";
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
labelloc="b";
style="rounded,filled";
fillcolor="wheat2";
"(*github.com/eatMoreApple/openwechat.Group).Members" [ tooltip="(*github.com/eatMoreApple/openwechat.Group).Members | defined in relations.go:225\nat relations.go:226: calling [(*github.com/eatMoreApple/openwechat.User).Detail]" fillcolor="moccasin" label="Members" penwidth="1.5" ]
"(*github.com/eatMoreApple/openwechat.Group).SendMsg" [ fillcolor="moccasin" label="SendMsg" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Group).SendMsg | defined in relations.go:205\nat relations.go:206: calling [(*github.com/eatMoreApple/openwechat.Self).SendMessageToGroup]" ]
"(*github.com/eatMoreApple/openwechat.Group).SendImage" [ tooltip="(*github.com/eatMoreApple/openwechat.Group).SendImage | defined in relations.go:215\nat relations.go:216: calling [(*github.com/eatMoreApple/openwechat.Self).SendImageToGroup]" fillcolor="moccasin" label="SendImage" penwidth="1.5" ]
"(*github.com/eatMoreApple/openwechat.Group).SendFile" [ fillcolor="moccasin" label="SendFile" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Group).SendFile | defined in relations.go:220\nat relations.go:221: calling [(*github.com/eatMoreApple/openwechat.Self).SendFileToGroup]" ]
"(*github.com/eatMoreApple/openwechat.Group).SendText" [ fillcolor="moccasin" label="SendText" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Group).SendText | defined in relations.go:210\nat relations.go:211: calling [(*github.com/eatMoreApple/openwechat.Self).SendTextToGroup]" ]
"(*github.com/eatMoreApple/openwechat.Group).AddFriendsIn" [ fillcolor="moccasin" label="AddFriendsIn" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Group).AddFriendsIn | defined in relations.go:234\nat relations.go:235: calling [(*github.com/eatMoreApple/openwechat.Self).AddFriendsIntoGroup]" ]
"(*github.com/eatMoreApple/openwechat.Group).RemoveMembers" [ fillcolor="moccasin" label="RemoveMembers" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Group).RemoveMembers | defined in relations.go:241\nat relations.go:242: calling [(*github.com/eatMoreApple/openwechat.Self).RemoveMemberFromGroup]" ]
}
subgraph "cluster_*github.com/eatMoreApple/openwechat.JsonFileHotReloadStorage" {
style="rounded,filled";
fillcolor="wheat2";
label="(*JsonFileHotReloadStorage)";
tooltip="type: *github.com/eatMoreApple/openwechat.JsonFileHotReloadStorage";
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
labelloc="b";
"(*github.com/eatMoreApple/openwechat.JsonFileHotReloadStorage).Dump" [ fillcolor="moccasin" label="Dump" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.JsonFileHotReloadStorage).Dump | defined in stroage.go:39" ]
"(*github.com/eatMoreApple/openwechat.JsonFileHotReloadStorage).GetHotReloadStorageItem" [ fillcolor="moccasin" label="GetHotReloadStorageItem" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.JsonFileHotReloadStorage).GetHotReloadStorageItem | defined in stroage.go:75" ]
"(*github.com/eatMoreApple/openwechat.JsonFileHotReloadStorage).Load" [ fillcolor="moccasin" label="Load" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.JsonFileHotReloadStorage).Load | defined in stroage.go:60" ]
}
subgraph "cluster_*github.com/eatMoreApple/openwechat.Message" {
fontsize="15";
fontcolor="#222222";
labelloc="b";
style="rounded,filled";
fillcolor="wheat2";
label="(*Message)";
tooltip="type: *github.com/eatMoreApple/openwechat.Message";
penwidth="0.5";
"(*github.com/eatMoreApple/openwechat.Message).IsSendByFriend" [ penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).IsSendByFriend | defined in message.go:113\nat message.go:114: calling [(*github.com/eatMoreApple/openwechat.Message).IsSendBySelf]\nat message.go:114: calling [(*github.com/eatMoreApple/openwechat.Message).IsSendByGroup]" fillcolor="moccasin" label="IsSendByFriend" ]
"(*github.com/eatMoreApple/openwechat.Message).IsSendByGroup" [ tooltip="(*github.com/eatMoreApple/openwechat.Message).IsSendByGroup | defined in message.go:118" fillcolor="moccasin" label="IsSendByGroup" penwidth="1.5" ]
"(*github.com/eatMoreApple/openwechat.Message).IsSendBySelf" [ fillcolor="moccasin" label="IsSendBySelf" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).IsSendBySelf | defined in message.go:108" ]
"(*github.com/eatMoreApple/openwechat.Message).init" [ tooltip="(*github.com/eatMoreApple/openwechat.Message).init | defined in message.go:309\nat message.go:311: calling [(*github.com/eatMoreApple/openwechat.Message).IsSendByGroup]\nat message.go:315: calling [(*github.com/eatMoreApple/openwechat.Message).Receiver]" fillcolor="moccasin" label="init" penwidth="0.5" ]
"(*github.com/eatMoreApple/openwechat.Message).Receiver" [ fillcolor="moccasin" label="Receiver" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).Receiver | defined in message.go:87\nat message.go:89: calling [(*github.com/eatMoreApple/openwechat.Message).Sender]\nat message.go:96: calling [(github.com/eatMoreApple/openwechat.Members).First]\nat message.go:103: calling [(github.com/eatMoreApple/openwechat.Members).First]\nat message.go:88: calling [(*github.com/eatMoreApple/openwechat.Message).IsSendByGroup]\nat message.go:99: calling [(github.com/eatMoreApple/openwechat.Members).SearchByUserName]\nat message.go:92: calling [(github.com/eatMoreApple/openwechat.Members).SearchByUserName]" ]
"(*github.com/eatMoreApple/openwechat.Message).Sender" [ fillcolor="moccasin" label="Sender" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).Sender | defined in message.go:58\nat message.go:63: calling [(*github.com/eatMoreApple/openwechat.User).Detail]" ]
"(*github.com/eatMoreApple/openwechat.Message).Reply" [ fillcolor="moccasin" label="Reply" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).Reply | defined in message.go:123\nat message.go:124: calling [github.com/eatMoreApple/openwechat.NewSendMessage]\nat message.go:127: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg]" ]
"(*github.com/eatMoreApple/openwechat.Message).ReplyText" [ fillcolor="moccasin" label="ReplyText" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).ReplyText | defined in message.go:131\nat message.go:132: calling [(*github.com/eatMoreApple/openwechat.Message).Reply]" ]
"(*github.com/eatMoreApple/openwechat.Message).HasFile" [ fillcolor="moccasin" label="HasFile" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).HasFile | defined in message.go:219\nat message.go:220: calling [(*github.com/eatMoreApple/openwechat.Message).IsVideo]\nat message.go:220: calling [(*github.com/eatMoreApple/openwechat.Message).IsPicture]\nat message.go:220: calling [(*github.com/eatMoreApple/openwechat.Message).IsVoice]\nat message.go:220: calling [(*github.com/eatMoreApple/openwechat.Message).IsMedia]" ]
"(*github.com/eatMoreApple/openwechat.Message).IsPicture" [ label="IsPicture" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).IsPicture | defined in message.go:157" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Message).IsMedia" [ fillcolor="moccasin" label="IsMedia" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).IsMedia | defined in message.go:177" ]
"(*github.com/eatMoreApple/openwechat.Message).IsVideo" [ fillcolor="moccasin" label="IsVideo" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).IsVideo | defined in message.go:173" ]
"(*github.com/eatMoreApple/openwechat.Message).IsVoice" [ fillcolor="moccasin" label="IsVoice" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).IsVoice | defined in message.go:161" ]
"(*github.com/eatMoreApple/openwechat.Message).IsReceiveRedPacket" [ tooltip="(*github.com/eatMoreApple/openwechat.Message).IsReceiveRedPacket | defined in message.go:205\nat message.go:206: calling [(*github.com/eatMoreApple/openwechat.Message).IsSystem]" fillcolor="moccasin" label="IsReceiveRedPacket" penwidth="1.5" ]
"(*github.com/eatMoreApple/openwechat.Message).IsSystem" [ fillcolor="moccasin" label="IsSystem" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).IsSystem | defined in message.go:186" ]
"(*github.com/eatMoreApple/openwechat.Message).IsSendRedPacket" [ fillcolor="moccasin" label="IsSendRedPacket" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).IsSendRedPacket | defined in message.go:200\nat message.go:201: calling [(*github.com/eatMoreApple/openwechat.Message).IsSystem]" ]
"(*github.com/eatMoreApple/openwechat.Message).RevokeMsg" [ tooltip="(*github.com/eatMoreApple/openwechat.Message).RevokeMsg | defined in message.go:266\nat message.go:271: calling [github.com/eatMoreApple/openwechat.XmlFormString]\nat message.go:267: calling [(*github.com/eatMoreApple/openwechat.Message).IsRecalled]" fillcolor="moccasin" label="RevokeMsg" penwidth="1.5" ]
"(*github.com/eatMoreApple/openwechat.Message).IsRecalled" [ fillcolor="moccasin" label="IsRecalled" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).IsRecalled | defined in message.go:182" ]
"(*github.com/eatMoreApple/openwechat.Message).SenderInGroup" [ fillcolor="moccasin" label="SenderInGroup" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).SenderInGroup | defined in message.go:67\nat message.go:83: calling [(github.com/eatMoreApple/openwechat.Members).First]\nat message.go:71: calling [(*github.com/eatMoreApple/openwechat.Message).Sender]\nat message.go:68: calling [(*github.com/eatMoreApple/openwechat.Message).IsSendByGroup]\nat message.go:75: calling [(*github.com/eatMoreApple/openwechat.User).Detail]\nat message.go:79: calling [(github.com/eatMoreApple/openwechat.Members).SearchByUserName]" ]
"(*github.com/eatMoreApple/openwechat.Message).ReplyFile" [ label="ReplyFile" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).ReplyFile | defined in message.go:143\nat message.go:146: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Message).IsTransferAccounts" [ penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).IsTransferAccounts | defined in message.go:195\nat message.go:196: calling [(*github.com/eatMoreApple/openwechat.Message).IsMedia]" fillcolor="moccasin" label="IsTransferAccounts" ]
"(*github.com/eatMoreApple/openwechat.Message).IsCard" [ fillcolor="moccasin" label="IsCard" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).IsCard | defined in message.go:169" ]
"(*github.com/eatMoreApple/openwechat.Message).FriendAddMessageContent" [ fillcolor="moccasin" label="FriendAddMessageContent" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).FriendAddMessageContent | defined in message.go:255\nat message.go:256: calling [(*github.com/eatMoreApple/openwechat.Message).IsFriendAdd]\nat message.go:260: calling [github.com/eatMoreApple/openwechat.XmlFormString]" ]
"(*github.com/eatMoreApple/openwechat.Message).IsFriendAdd" [ fillcolor="moccasin" label="IsFriendAdd" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).IsFriendAdd | defined in message.go:165" ]
"(*github.com/eatMoreApple/openwechat.Message).GetFile" [ fillcolor="moccasin" label="GetFile" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).GetFile | defined in message.go:224\nat message.go:229: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxGetMsgImg]\nat message.go:225: calling [(*github.com/eatMoreApple/openwechat.Message).HasFile]\nat message.go:231: calling [(*github.com/eatMoreApple/openwechat.Message).IsVoice]\nat message.go:237: calling [(*github.com/eatMoreApple/openwechat.Message).IsMedia]\nat message.go:234: calling [(*github.com/eatMoreApple/openwechat.Message).IsVideo]\nat message.go:232: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxGetVoice]\nat message.go:228: calling [(*github.com/eatMoreApple/openwechat.Message).IsPicture]\nat message.go:235: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxGetVideo]\nat message.go:238: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxGetMedia]" ]
"(*github.com/eatMoreApple/openwechat.Message).ReplyImage" [ label="ReplyImage" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).ReplyImage | defined in message.go:136\nat message.go:139: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Message).Agree" [ fillcolor="moccasin" label="Agree" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).Agree | defined in message.go:277\nat message.go:278: calling [(*github.com/eatMoreApple/openwechat.Message).IsFriendAdd]\nat message.go:285: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser]" ]
"(*github.com/eatMoreApple/openwechat.Message).Card" [ fillcolor="moccasin" label="Card" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).Card | defined in message.go:244\nat message.go:245: calling [(*github.com/eatMoreApple/openwechat.Message).IsCard]\nat message.go:249: calling [github.com/eatMoreApple/openwechat.XmlFormString]" ]
"(*github.com/eatMoreApple/openwechat.Message).IsText" [ label="IsText" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Message).IsText | defined in message.go:149" fillcolor="moccasin" ]
}
subgraph "cluster_*github.com/eatMoreApple/openwechat.MessageContext" {
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
labelloc="b";
style="rounded,filled";
fillcolor="wheat2";
label="(*MessageContext)";
tooltip="type: *github.com/eatMoreApple/openwechat.MessageContext";
"(*github.com/eatMoreApple/openwechat.MessageContext).Next" [ label="Next" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.MessageContext).Next | defined in message_handle.go:32" fillcolor="moccasin" ]
}
subgraph "cluster_*github.com/eatMoreApple/openwechat.MessageMatchDispatcher" {
labelloc="b";
style="rounded,filled";
fillcolor="wheat2";
label="(*MessageMatchDispatcher)";
tooltip="type: *github.com/eatMoreApple/openwechat.MessageMatchDispatcher";
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriend$1" [ fillcolor="moccasin" label="OnFriend$1" style="dotted,filled" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriend$1 | defined in message_handle.go:145\nat message_handle.go:145: calling [(*github.com/eatMoreApple/openwechat.Message).IsSendByFriend]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendByNickName" [ fillcolor="moccasin" label="OnFriendByNickName" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendByNickName | defined in message_handle.go:132\nat message_handle.go:140: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler" [ fillcolor="moccasin" label="RegisterHandler" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler | defined in message_handle.go:98" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnVoice$1" [ style="dotted,filled" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnVoice$1 | defined in message_handle.go:118\nat message_handle.go:118: calling [(*github.com/eatMoreApple/openwechat.Message).IsVoice]" fillcolor="moccasin" label="OnVoice$1" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnGroup" [ fillcolor="moccasin" label="OnGroup" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnGroup | defined in message_handle.go:149\nat message_handle.go:150: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).do" [ label="do" penwidth="0.5" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).do | defined in message_handle.go:92\nat message_handle.go:93: calling [(*github.com/eatMoreApple/openwechat.MessageContext).Next]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendAdd" [ fillcolor="moccasin" label="OnFriendAdd" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendAdd | defined in message_handle.go:122\nat message_handle.go:123: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnUser" [ fillcolor="moccasin" label="OnUser" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnUser | defined in message_handle.go:154\nat message_handle.go:162: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendByRemarkName" [ fillcolor="moccasin" label="OnFriendByRemarkName" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendByRemarkName | defined in message_handle.go:166\nat message_handle.go:170: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnUser]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnGroup$1" [ tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnGroup$1 | defined in message_handle.go:150\nat message_handle.go:150: calling [(*github.com/eatMoreApple/openwechat.Message).IsSendByGroup]" fillcolor="moccasin" label="OnGroup$1" style="dotted,filled" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnGroupByGroupName$1" [ fillcolor="moccasin" label="OnGroupByGroupName$1" style="dotted,filled" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnGroupByGroupName$1 | defined in message_handle.go:175\nat message_handle.go:176: calling [(*github.com/eatMoreApple/openwechat.User).IsGroup]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnImage" [ penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnImage | defined in message_handle.go:112\nat message_handle.go:113: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" fillcolor="moccasin" label="OnImage" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).Dispatch" [ fillcolor="moccasin" label="Dispatch" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).Dispatch | defined in message_handle.go:77\nat message_handle.go:86: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).do]\nat message_handle.go:88: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).do]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnCard$1" [ style="dotted,filled" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnCard$1 | defined in message_handle.go:128\nat message_handle.go:128: calling [(*github.com/eatMoreApple/openwechat.Message).IsCard]" fillcolor="moccasin" label="OnCard$1" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnText" [ tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnText | defined in message_handle.go:107\nat message_handle.go:108: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" fillcolor="moccasin" label="OnText" penwidth="1.5" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnImage$1" [ fillcolor="moccasin" label="OnImage$1" style="dotted,filled" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnImage$1 | defined in message_handle.go:113\nat message_handle.go:113: calling [(*github.com/eatMoreApple/openwechat.Message).IsPicture]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendByNickName$1" [ fillcolor="moccasin" label="OnFriendByNickName$1" style="dotted,filled" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendByNickName$1 | defined in message_handle.go:133\nat message_handle.go:134: calling [(*github.com/eatMoreApple/openwechat.Message).IsSendByFriend]\nat message_handle.go:135: calling [(*github.com/eatMoreApple/openwechat.Message).Sender]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendByRemarkName$1" [ fillcolor="moccasin" label="OnFriendByRemarkName$1" style="dotted,filled" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendByRemarkName$1 | defined in message_handle.go:167\nat message_handle.go:168: calling [(*github.com/eatMoreApple/openwechat.User).IsFriend]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnVoice" [ fillcolor="moccasin" label="OnVoice" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnVoice | defined in message_handle.go:117\nat message_handle.go:118: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnUser$1" [ fillcolor="moccasin" label="OnUser$1" style="dotted,filled" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnUser$1 | defined in message_handle.go:155\nat message_handle.go:156: calling [(*github.com/eatMoreApple/openwechat.Message).Sender]\nat message_handle.go:160: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendByRemarkName$1]\nat message_handle.go:160: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnGroupByGroupName$1]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendAdd$1" [ fillcolor="moccasin" label="OnFriendAdd$1" style="dotted,filled" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendAdd$1 | defined in message_handle.go:123\nat message_handle.go:123: calling [(*github.com/eatMoreApple/openwechat.Message).IsFriendAdd]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnGroupByGroupName" [ penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnGroupByGroupName | defined in message_handle.go:174\nat message_handle.go:178: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnUser]" fillcolor="moccasin" label="OnGroupByGroupName" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriend" [ fillcolor="moccasin" label="OnFriend" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriend | defined in message_handle.go:144\nat message_handle.go:145: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnText$1" [ fillcolor="moccasin" label="OnText$1" style="dotted,filled" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnText$1 | defined in message_handle.go:108\nat message_handle.go:108: calling [(*github.com/eatMoreApple/openwechat.Message).IsText]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnCard" [ fillcolor="moccasin" label="OnCard" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnCard | defined in message_handle.go:127\nat message_handle.go:128: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" ]
}
subgraph "cluster_*github.com/eatMoreApple/openwechat.Self" {
fillcolor="wheat2";
label="(*Self)";
tooltip="type: *github.com/eatMoreApple/openwechat.Self";
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
labelloc="b";
style="rounded,filled";
"(*github.com/eatMoreApple/openwechat.Self).SendImageToFriend" [ fillcolor="moccasin" label="SendImageToFriend" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).SendImageToFriend | defined in user.go:237\nat user.go:240: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg]" ]
"(*github.com/eatMoreApple/openwechat.Self).RevokeMessage" [ fillcolor="moccasin" label="RevokeMessage" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).RevokeMessage | defined in user.go:353\nat user.go:354: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg]" ]
"(*github.com/eatMoreApple/openwechat.Self).updateMembers" [ fillcolor="moccasin" label="updateMembers" penwidth="0.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).updateMembers | defined in user.go:137\nat user.go:139: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact]\nat user.go:143: calling [(github.com/eatMoreApple/openwechat.Members).SetOwner]" ]
"(*github.com/eatMoreApple/openwechat.Self).Members" [ fillcolor="moccasin" label="Members" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).Members | defined in user.go:125\nat user.go:129: calling [(*github.com/eatMoreApple/openwechat.Self).updateMembers]" ]
"(*github.com/eatMoreApple/openwechat.Self).UpdateMembersDetail" [ fillcolor="moccasin" label="UpdateMembersDetail" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).UpdateMembersDetail | defined in user.go:202\nat user.go:208: calling [(github.com/eatMoreApple/openwechat.Members).detail]\nat user.go:204: calling [(*github.com/eatMoreApple/openwechat.Self).Members]" ]
"(*github.com/eatMoreApple/openwechat.Self).SendTextToFriend" [ fillcolor="moccasin" label="SendTextToFriend" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).SendTextToFriend | defined in user.go:231\nat user.go:232: calling [github.com/eatMoreApple/openwechat.NewTextSendMessage]\nat user.go:233: calling [(*github.com/eatMoreApple/openwechat.Self).SendMessageToFriend]" ]
"(*github.com/eatMoreApple/openwechat.Self).sendMessageToUser" [ fillcolor="moccasin" label="sendMessageToUser" penwidth="0.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).sendMessageToUser | defined in user.go:212\nat user.go:217: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg]" ]
"(*github.com/eatMoreApple/openwechat.Self).SendMessageToFriend" [ label="SendMessageToFriend" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).SendMessageToFriend | defined in user.go:226\nat user.go:227: calling [(*github.com/eatMoreApple/openwechat.Self).sendMessageToUser]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Self).forwardMessage" [ fillcolor="moccasin" label="forwardMessage" penwidth="0.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).forwardMessage | defined in user.go:358\nat user.go:374: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg]\nat user.go:382: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg]\nat user.go:366: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg]" ]
"(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends" [ fillcolor="moccasin" label="ForwardMessageToFriends" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends | defined in user.go:391\nat user.go:396: calling [(*github.com/eatMoreApple/openwechat.Self).forwardMessage]" ]
"(*github.com/eatMoreApple/openwechat.Self).Mps" [ fillcolor="moccasin" label="Mps" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).Mps | defined in user.go:191\nat user.go:196: calling [(github.com/eatMoreApple/openwechat.Members).MPs]\nat user.go:193: calling [(*github.com/eatMoreApple/openwechat.Self).Members]" ]
"(*github.com/eatMoreApple/openwechat.Self).Groups" [ penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).Groups | defined in user.go:180\nat user.go:182: calling [(*github.com/eatMoreApple/openwechat.Self).Members]\nat user.go:185: calling [(github.com/eatMoreApple/openwechat.Members).Groups]" fillcolor="moccasin" label="Groups" ]
"(*github.com/eatMoreApple/openwechat.Self).Friends" [ fillcolor="moccasin" label="Friends" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).Friends | defined in user.go:169\nat user.go:171: calling [(*github.com/eatMoreApple/openwechat.Self).Members]\nat user.go:174: calling [(github.com/eatMoreApple/openwechat.Members).Friends]" ]
"(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToGroups" [ fillcolor="moccasin" label="ForwardMessageToGroups" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToGroups | defined in user.go:400\nat user.go:405: calling [(*github.com/eatMoreApple/openwechat.Self).forwardMessage]" ]
"(*github.com/eatMoreApple/openwechat.Self).SendMessageToGroup" [ label="SendMessageToGroup" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).SendMessageToGroup | defined in user.go:324\nat user.go:325: calling [(*github.com/eatMoreApple/openwechat.Self).sendMessageToUser]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Self).AddFriendsIntoGroup" [ label="AddFriendsIntoGroup" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).AddFriendsIntoGroup | defined in user.go:259\nat user.go:278: calling [(*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom]\nat user.go:272: calling [(github.com/eatMoreApple/openwechat.Friend).String]\nat user.go:264: calling [(*github.com/eatMoreApple/openwechat.Group).Members]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Self).AddFriendIntoManyGroups" [ fillcolor="moccasin" label="AddFriendIntoManyGroups" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).AddFriendIntoManyGroups | defined in user.go:314\nat user.go:316: calling [(*github.com/eatMoreApple/openwechat.Self).AddFriendsIntoGroup]" ]
"(*github.com/eatMoreApple/openwechat.Self).SendImageToGroup" [ fillcolor="moccasin" label="SendImageToGroup" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).SendImageToGroup | defined in user.go:335\nat user.go:338: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg]" ]
"(*github.com/eatMoreApple/openwechat.Self).SendTextToGroup" [ fillcolor="moccasin" label="SendTextToGroup" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).SendTextToGroup | defined in user.go:329\nat user.go:330: calling [github.com/eatMoreApple/openwechat.NewTextSendMessage]\nat user.go:331: calling [(*github.com/eatMoreApple/openwechat.Self).SendMessageToGroup]" ]
"(*github.com/eatMoreApple/openwechat.Self).SendFileToGroup" [ fillcolor="moccasin" label="SendFileToGroup" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).SendFileToGroup | defined in user.go:342\nat user.go:345: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile]" ]
"(*github.com/eatMoreApple/openwechat.Self).SendFileToFriend" [ label="SendFileToFriend" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).SendFileToFriend | defined in user.go:244\nat user.go:247: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile]" fillcolor="moccasin" ]
"(*github.com/eatMoreApple/openwechat.Self).RemoveMemberFromGroup" [ penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).RemoveMemberFromGroup | defined in user.go:284\nat user.go:291: calling [(*github.com/eatMoreApple/openwechat.Group).Members]\nat user.go:309: calling [(*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom]" fillcolor="moccasin" label="RemoveMemberFromGroup" ]
"(*github.com/eatMoreApple/openwechat.Self).SetRemarkNameToFriend" [ penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).SetRemarkNameToFriend | defined in user.go:252\nat user.go:254: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxOplog]" fillcolor="moccasin" label="SetRemarkNameToFriend" ]
"(*github.com/eatMoreApple/openwechat.Self).FileHelper" [ fillcolor="moccasin" label="FileHelper" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.Self).FileHelper | defined in user.go:150\nat user.go:155: calling [(*github.com/eatMoreApple/openwechat.Self).Members]\nat user.go:161: calling [github.com/eatMoreApple/openwechat.NewFriendHelper]\nat user.go:163: calling [(github.com/eatMoreApple/openwechat.Members).First]\nat user.go:159: calling [(github.com/eatMoreApple/openwechat.Members).SearchByUserName]" ]
}
subgraph "cluster_*github.com/eatMoreApple/openwechat.SentMessage" {
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
labelloc="b";
style="rounded,filled";
fillcolor="wheat2";
label="(*SentMessage)";
tooltip="type: *github.com/eatMoreApple/openwechat.SentMessage";
"(*github.com/eatMoreApple/openwechat.SentMessage).Revoke" [ fillcolor="moccasin" label="Revoke" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.SentMessage).Revoke | defined in message.go:471\nat message.go:472: calling [(*github.com/eatMoreApple/openwechat.Self).RevokeMessage]" ]
"(*github.com/eatMoreApple/openwechat.SentMessage).ForwardToGroups" [ fillcolor="moccasin" label="ForwardToGroups" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.SentMessage).ForwardToGroups | defined in message.go:481\nat message.go:482: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToGroups]" ]
"(*github.com/eatMoreApple/openwechat.SentMessage).ForwardToFriends" [ tooltip="(*github.com/eatMoreApple/openwechat.SentMessage).ForwardToFriends | defined in message.go:476\nat message.go:477: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends]" fillcolor="moccasin" label="ForwardToFriends" penwidth="1.5" ]
}
subgraph "cluster_*github.com/eatMoreApple/openwechat.SyncCheckResponse" {
fontcolor="#222222";
labelloc="b";
style="rounded,filled";
fillcolor="wheat2";
label="(*SyncCheckResponse)";
tooltip="type: *github.com/eatMoreApple/openwechat.SyncCheckResponse";
penwidth="0.5";
fontsize="15";
"(*github.com/eatMoreApple/openwechat.SyncCheckResponse).Success" [ fillcolor="moccasin" label="Success" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.SyncCheckResponse).Success | defined in items.go:136" ]
"(*github.com/eatMoreApple/openwechat.SyncCheckResponse).NorMal" [ fillcolor="moccasin" label="NorMal" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.SyncCheckResponse).NorMal | defined in items.go:140\nat items.go:141: calling [(*github.com/eatMoreApple/openwechat.SyncCheckResponse).Success]" ]
"(*github.com/eatMoreApple/openwechat.SyncCheckResponse).Error" [ fillcolor="moccasin" label="Error" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.SyncCheckResponse).Error | defined in items.go:145" ]
}
subgraph "cluster_*github.com/eatMoreApple/openwechat.User" {
fontsize="15";
fontcolor="#222222";
labelloc="b";
style="rounded,filled";
fillcolor="wheat2";
label="(*User)";
tooltip="type: *github.com/eatMoreApple/openwechat.User";
penwidth="0.5";
"(*github.com/eatMoreApple/openwechat.User).Detail" [ penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.User).Detail | defined in user.go:83\nat user.go:89: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact]\nat user.go:93: calling [(github.com/eatMoreApple/openwechat.Members).First]" fillcolor="moccasin" label="Detail" ]
"(*github.com/eatMoreApple/openwechat.User).IsGroup" [ penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.User).IsGroup | defined in user.go:104" fillcolor="moccasin" label="IsGroup" ]
"(*github.com/eatMoreApple/openwechat.User).IsMP" [ fillcolor="moccasin" label="IsMP" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.User).IsMP | defined in user.go:109" ]
"(*github.com/eatMoreApple/openwechat.User).IsFriend" [ penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.User).IsFriend | defined in user.go:99\nat user.go:100: calling [(*github.com/eatMoreApple/openwechat.User).IsGroup]" fillcolor="moccasin" label="IsFriend" ]
"(*github.com/eatMoreApple/openwechat.User).GetAvatarResponse" [ fillcolor="moccasin" label="GetAvatarResponse" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.User).GetAvatarResponse | defined in user.go:58\nat user.go:59: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxGetHeadImg]" ]
"(*github.com/eatMoreApple/openwechat.User).SaveAvatar" [ fillcolor="moccasin" label="SaveAvatar" penwidth="1.5" tooltip="(*github.com/eatMoreApple/openwechat.User).SaveAvatar | defined in user.go:63\nat user.go:64: calling [(*github.com/eatMoreApple/openwechat.User).GetAvatarResponse]" ]
}
subgraph "cluster_github.com/eatMoreApple/openwechat.BaseResponse" {
style="rounded,filled";
fillcolor="wheat2";
label="(BaseResponse)";
tooltip="type: github.com/eatMoreApple/openwechat.BaseResponse";
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
labelloc="b";
"(github.com/eatMoreApple/openwechat.BaseResponse).Error" [ label="Error" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.BaseResponse).Error | defined in items.go:48\nat items.go:49: calling [github.com/eatMoreApple/openwechat.getResponseErrorWithRetCode]" fillcolor="moccasin" ]
"(github.com/eatMoreApple/openwechat.BaseResponse).Ok" [ fillcolor="moccasin" label="Ok" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.BaseResponse).Ok | defined in items.go:44" ]
}
subgraph "cluster_github.com/eatMoreApple/openwechat.Friend" {
fillcolor="wheat2";
label="(Friend)";
tooltip="type: github.com/eatMoreApple/openwechat.Friend";
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
labelloc="b";
style="rounded,filled";
"(github.com/eatMoreApple/openwechat.Friend).String" [ tooltip="(github.com/eatMoreApple/openwechat.Friend).String | defined in relations.go:12" fillcolor="moccasin" label="String" penwidth="1.5" ]
}
subgraph "cluster_github.com/eatMoreApple/openwechat.Friends" {
tooltip="type: github.com/eatMoreApple/openwechat.Friends";
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
labelloc="b";
style="rounded,filled";
fillcolor="wheat2";
label="(Friends)";
"(github.com/eatMoreApple/openwechat.Friends).SendText" [ tooltip="(github.com/eatMoreApple/openwechat.Friends).SendText | defined in relations.go:132\nat relations.go:133: calling [github.com/eatMoreApple/openwechat.getTotalDuration]\nat relations.go:146: calling [(*github.com/eatMoreApple/openwechat.Friend).SendText]\nat relations.go:143: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends]" fillcolor="moccasin" label="SendText" penwidth="1.5" ]
"(github.com/eatMoreApple/openwechat.Friends).Search" [ fillcolor="moccasin" label="Search" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Friends).Search | defined in relations.go:85\nat relations.go:98: calling [(github.com/eatMoreApple/openwechat.Friends).SearchByRemarkName$1]\nat relations.go:98: calling [(github.com/eatMoreApple/openwechat.Friends).SearchByNickName$1]\nat relations.go:90: calling [(github.com/eatMoreApple/openwechat.Friends).Count]\nat relations.go:93: calling [(github.com/eatMoreApple/openwechat.Friends).Count]\nat relations.go:98: calling [(github.com/eatMoreApple/openwechat.Friends).SearchByUserName$1]" ]
"(github.com/eatMoreApple/openwechat.Friends).Count" [ penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Friends).Count | defined in relations.go:49" fillcolor="moccasin" label="Count" ]
"(github.com/eatMoreApple/openwechat.Friends).SearchByNickName$1" [ fillcolor="moccasin" label="SearchByNickName$1" style="dotted,filled" tooltip="(github.com/eatMoreApple/openwechat.Friends).SearchByNickName$1 | defined in relations.go:76" ]
"(github.com/eatMoreApple/openwechat.Friends).SearchByRemarkName$1" [ fillcolor="moccasin" label="SearchByRemarkName$1" style="dotted,filled" tooltip="(github.com/eatMoreApple/openwechat.Friends).SearchByRemarkName$1 | defined in relations.go:81" ]
"(github.com/eatMoreApple/openwechat.Friends).SearchByUserName$1" [ fillcolor="moccasin" label="SearchByUserName$1" style="dotted,filled" tooltip="(github.com/eatMoreApple/openwechat.Friends).SearchByUserName$1 | defined in relations.go:71" ]
"(github.com/eatMoreApple/openwechat.Friends).SearchByNickName" [ fillcolor="moccasin" label="SearchByNickName" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Friends).SearchByNickName | defined in relations.go:75\nat relations.go:76: calling [(github.com/eatMoreApple/openwechat.Friends).Search]" ]
"(github.com/eatMoreApple/openwechat.Friends).SearchByRemarkName" [ fillcolor="moccasin" label="SearchByRemarkName" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Friends).SearchByRemarkName | defined in relations.go:80\nat relations.go:81: calling [(github.com/eatMoreApple/openwechat.Friends).Search]" ]
"(github.com/eatMoreApple/openwechat.Friends).SendImage" [ tooltip="(github.com/eatMoreApple/openwechat.Friends).SendImage | defined in relations.go:154\nat relations.go:168: calling [(*github.com/eatMoreApple/openwechat.Friend).SendImage]\nat relations.go:165: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends]\nat relations.go:155: calling [github.com/eatMoreApple/openwechat.getTotalDuration]" fillcolor="moccasin" label="SendImage" penwidth="1.5" ]
"(github.com/eatMoreApple/openwechat.Friends).Last" [ fillcolor="moccasin" label="Last" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Friends).Last | defined in relations.go:62\nat relations.go:63: calling [(github.com/eatMoreApple/openwechat.Friends).Count]\nat relations.go:64: calling [(github.com/eatMoreApple/openwechat.Friends).Count]" ]
"(github.com/eatMoreApple/openwechat.Friends).SearchByUserName" [ tooltip="(github.com/eatMoreApple/openwechat.Friends).SearchByUserName | defined in relations.go:70\nat relations.go:71: calling [(github.com/eatMoreApple/openwechat.Friends).Search]" fillcolor="moccasin" label="SearchByUserName" penwidth="1.5" ]
"(github.com/eatMoreApple/openwechat.Friends).First" [ tooltip="(github.com/eatMoreApple/openwechat.Friends).First | defined in relations.go:54\nat relations.go:55: calling [(github.com/eatMoreApple/openwechat.Friends).Count]" fillcolor="moccasin" label="First" penwidth="1.5" ]
"(github.com/eatMoreApple/openwechat.Friends).SendMsg" [ fillcolor="moccasin" label="SendMsg" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Friends).SendMsg | defined in relations.go:110\nat relations.go:124: calling [(*github.com/eatMoreApple/openwechat.Friend).SendMsg]\nat relations.go:121: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends]\nat relations.go:111: calling [github.com/eatMoreApple/openwechat.getTotalDuration]" ]
"(github.com/eatMoreApple/openwechat.Friends).SendFile" [ fillcolor="moccasin" label="SendFile" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Friends).SendFile | defined in relations.go:176\nat relations.go:177: calling [github.com/eatMoreApple/openwechat.getTotalDuration]\nat relations.go:187: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends]\nat relations.go:190: calling [(*github.com/eatMoreApple/openwechat.Friend).SendFile]" ]
}
subgraph "cluster_github.com/eatMoreApple/openwechat.Groups" {
fillcolor="wheat2";
label="(Groups)";
tooltip="type: github.com/eatMoreApple/openwechat.Groups";
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
labelloc="b";
style="rounded,filled";
"(github.com/eatMoreApple/openwechat.Groups).Search" [ label="Search" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Groups).Search | defined in relations.go:350\nat relations.go:355: calling [(github.com/eatMoreApple/openwechat.Groups).Count]\nat relations.go:358: calling [(github.com/eatMoreApple/openwechat.Groups).Count]\nat relations.go:363: calling [(github.com/eatMoreApple/openwechat.Groups).SearchByNickName$1]\nat relations.go:363: calling [(github.com/eatMoreApple/openwechat.Groups).SearchByUserName$1]\nat relations.go:363: calling [(github.com/eatMoreApple/openwechat.Groups).SearchByRemarkName$1]" fillcolor="moccasin" ]
"(github.com/eatMoreApple/openwechat.Groups).Count" [ penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Groups).Count | defined in relations.go:248" fillcolor="moccasin" label="Count" ]
"(github.com/eatMoreApple/openwechat.Groups).SearchByNickName$1" [ fillcolor="moccasin" label="SearchByNickName$1" style="dotted,filled" tooltip="(github.com/eatMoreApple/openwechat.Groups).SearchByNickName$1 | defined in relations.go:341" ]
"(github.com/eatMoreApple/openwechat.Groups).SearchByRemarkName$1" [ fillcolor="moccasin" label="SearchByRemarkName$1" style="dotted,filled" tooltip="(github.com/eatMoreApple/openwechat.Groups).SearchByRemarkName$1 | defined in relations.go:346" ]
"(github.com/eatMoreApple/openwechat.Groups).SearchByUserName$1" [ label="SearchByUserName$1" style="dotted,filled" tooltip="(github.com/eatMoreApple/openwechat.Groups).SearchByUserName$1 | defined in relations.go:336" fillcolor="moccasin" ]
"(github.com/eatMoreApple/openwechat.Groups).First" [ fillcolor="moccasin" label="First" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Groups).First | defined in relations.go:253\nat relations.go:254: calling [(github.com/eatMoreApple/openwechat.Groups).Count]" ]
"(github.com/eatMoreApple/openwechat.Groups).SendMsg" [ penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Groups).SendMsg | defined in relations.go:269\nat relations.go:270: calling [github.com/eatMoreApple/openwechat.getTotalDuration]\nat relations.go:283: calling [(*github.com/eatMoreApple/openwechat.Group).SendMsg]\nat relations.go:280: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToGroups]" fillcolor="moccasin" label="SendMsg" ]
"(github.com/eatMoreApple/openwechat.Groups).SendImage" [ fillcolor="moccasin" label="SendImage" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Groups).SendImage | defined in relations.go:313\nat relations.go:314: calling [github.com/eatMoreApple/openwechat.getTotalDuration]\nat relations.go:327: calling [(*github.com/eatMoreApple/openwechat.Group).SendImage]\nat relations.go:324: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToGroups]" ]
"(github.com/eatMoreApple/openwechat.Groups).Last" [ label="Last" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Groups).Last | defined in relations.go:261\nat relations.go:262: calling [(github.com/eatMoreApple/openwechat.Groups).Count]\nat relations.go:263: calling [(github.com/eatMoreApple/openwechat.Groups).Count]" fillcolor="moccasin" ]
"(github.com/eatMoreApple/openwechat.Groups).SearchByUserName" [ penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Groups).SearchByUserName | defined in relations.go:335\nat relations.go:336: calling [(github.com/eatMoreApple/openwechat.Groups).Search]" fillcolor="moccasin" label="SearchByUserName" ]
"(github.com/eatMoreApple/openwechat.Groups).SendText" [ fillcolor="moccasin" label="SendText" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Groups).SendText | defined in relations.go:291\nat relations.go:292: calling [github.com/eatMoreApple/openwechat.getTotalDuration]\nat relations.go:302: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToGroups]\nat relations.go:305: calling [(*github.com/eatMoreApple/openwechat.Group).SendText]" ]
"(github.com/eatMoreApple/openwechat.Groups).SearchByRemarkName" [ penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Groups).SearchByRemarkName | defined in relations.go:345\nat relations.go:346: calling [(github.com/eatMoreApple/openwechat.Groups).Search]" fillcolor="moccasin" label="SearchByRemarkName" ]
"(github.com/eatMoreApple/openwechat.Groups).SearchByNickName" [ penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Groups).SearchByNickName | defined in relations.go:340\nat relations.go:341: calling [(github.com/eatMoreApple/openwechat.Groups).Search]" fillcolor="moccasin" label="SearchByNickName" ]
}
subgraph "cluster_github.com/eatMoreApple/openwechat.LoginInfo" {
tooltip="type: github.com/eatMoreApple/openwechat.LoginInfo";
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
labelloc="b";
style="rounded,filled";
fillcolor="wheat2";
label="(LoginInfo)";
"(github.com/eatMoreApple/openwechat.LoginInfo).Ok" [ penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.LoginInfo).Ok | defined in items.go:23" fillcolor="moccasin" label="Ok" ]
}
subgraph "cluster_github.com/eatMoreApple/openwechat.Members" {
fontsize="15";
fontcolor="#222222";
labelloc="b";
style="rounded,filled";
fillcolor="wheat2";
label="(Members)";
tooltip="type: github.com/eatMoreApple/openwechat.Members";
penwidth="0.5";
"(github.com/eatMoreApple/openwechat.Members).Count" [ fillcolor="moccasin" label="Count" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Members).Count | defined in user.go:412" ]
"(github.com/eatMoreApple/openwechat.Members).First" [ fillcolor="moccasin" label="First" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Members).First | defined in user.go:417\nat user.go:418: calling [(github.com/eatMoreApple/openwechat.Members).Count]" ]
"(github.com/eatMoreApple/openwechat.Members).Search" [ penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Members).Search | defined in user.go:458\nat user.go:471: calling [(github.com/eatMoreApple/openwechat.Members).SearchByRemarkName$1]\nat user.go:471: calling [(github.com/eatMoreApple/openwechat.Members).SearchByNickName$1]\nat user.go:471: calling [(github.com/eatMoreApple/openwechat.Members).SearchByUserName$1]\nat user.go:463: calling [(github.com/eatMoreApple/openwechat.Members).Count]" fillcolor="moccasin" label="Search" ]
"(github.com/eatMoreApple/openwechat.Members).SearchByNickName$1" [ label="SearchByNickName$1" style="dotted,filled" tooltip="(github.com/eatMoreApple/openwechat.Members).SearchByNickName$1 | defined in user.go:449" fillcolor="moccasin" ]
"(github.com/eatMoreApple/openwechat.Members).SearchByRemarkName$1" [ style="dotted,filled" tooltip="(github.com/eatMoreApple/openwechat.Members).SearchByRemarkName$1 | defined in user.go:454" fillcolor="moccasin" label="SearchByRemarkName$1" ]
"(github.com/eatMoreApple/openwechat.Members).SearchByUserName$1" [ fillcolor="moccasin" label="SearchByUserName$1" style="dotted,filled" tooltip="(github.com/eatMoreApple/openwechat.Members).SearchByUserName$1 | defined in user.go:444" ]
"(github.com/eatMoreApple/openwechat.Members).SearchByUserName" [ fillcolor="moccasin" label="SearchByUserName" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Members).SearchByUserName | defined in user.go:443\nat user.go:444: calling [(github.com/eatMoreApple/openwechat.Members).Search]" ]
"(github.com/eatMoreApple/openwechat.Members).SearchByNickName" [ fillcolor="moccasin" label="SearchByNickName" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Members).SearchByNickName | defined in user.go:448\nat user.go:449: calling [(github.com/eatMoreApple/openwechat.Members).Search]" ]
"(github.com/eatMoreApple/openwechat.Members).SetOwner" [ label="SetOwner" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Members).SetOwner | defined in user.go:436" fillcolor="moccasin" ]
"(github.com/eatMoreApple/openwechat.Members).detail" [ fillcolor="moccasin" label="detail" penwidth="0.5" tooltip="(github.com/eatMoreApple/openwechat.Members).detail | defined in user.go:518\nat user.go:542: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact]\nat user.go:554: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact]\nat user.go:522: calling [(github.com/eatMoreApple/openwechat.Members).Count]\nat user.go:561: calling [(github.com/eatMoreApple/openwechat.Members).SetOwner]" ]
"(github.com/eatMoreApple/openwechat.Members).MPs" [ fillcolor="moccasin" label="MPs" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Members).MPs | defined in user.go:506\nat user.go:509: calling [(*github.com/eatMoreApple/openwechat.User).IsMP]" ]
"(github.com/eatMoreApple/openwechat.Members).Groups" [ fillcolor="moccasin" label="Groups" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Members).Groups | defined in user.go:495\nat user.go:498: calling [(*github.com/eatMoreApple/openwechat.User).IsGroup]" ]
"(github.com/eatMoreApple/openwechat.Members).Friends" [ fillcolor="moccasin" label="Friends" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Members).Friends | defined in user.go:484\nat user.go:487: calling [(*github.com/eatMoreApple/openwechat.User).IsFriend]" ]
"(github.com/eatMoreApple/openwechat.Members).SearchByRemarkName" [ label="SearchByRemarkName" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Members).SearchByRemarkName | defined in user.go:453\nat user.go:454: calling [(github.com/eatMoreApple/openwechat.Members).Search]" fillcolor="moccasin" ]
"(github.com/eatMoreApple/openwechat.Members).Last" [ fillcolor="moccasin" label="Last" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Members).Last | defined in user.go:426\nat user.go:427: calling [(github.com/eatMoreApple/openwechat.Members).Count]\nat user.go:428: calling [(github.com/eatMoreApple/openwechat.Members).Count]" ]
}
subgraph "cluster_github.com/eatMoreApple/openwechat.Mps" {
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
labelloc="b";
style="rounded,filled";
fillcolor="wheat2";
label="(Mps)";
tooltip="type: github.com/eatMoreApple/openwechat.Mps";
"(github.com/eatMoreApple/openwechat.Mps).Last" [ label="Last" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Mps).Last | defined in relations.go:398\nat relations.go:399: calling [(github.com/eatMoreApple/openwechat.Mps).Count]\nat relations.go:400: calling [(github.com/eatMoreApple/openwechat.Mps).Count]" fillcolor="moccasin" ]
"(github.com/eatMoreApple/openwechat.Mps).Count" [ fillcolor="moccasin" label="Count" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Mps).Count | defined in relations.go:385" ]
"(github.com/eatMoreApple/openwechat.Mps).Search" [ fillcolor="moccasin" label="Search" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Mps).Search | defined in relations.go:406\nat relations.go:411: calling [(github.com/eatMoreApple/openwechat.Mps).Count]\nat relations.go:414: calling [(github.com/eatMoreApple/openwechat.Mps).Count]" ]
"(github.com/eatMoreApple/openwechat.Mps).First" [ fillcolor="moccasin" label="First" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.Mps).First | defined in relations.go:390\nat relations.go:391: calling [(github.com/eatMoreApple/openwechat.Mps).Count]" ]
}
subgraph "cluster_github.com/eatMoreApple/openwechat.UserAgentHook" {
fillcolor="wheat2";
label="(UserAgentHook)";
tooltip="type: github.com/eatMoreApple/openwechat.UserAgentHook";
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
labelloc="b";
style="rounded,filled";
"(github.com/eatMoreApple/openwechat.UserAgentHook).BeforeRequest" [ fillcolor="moccasin" label="BeforeRequest" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.UserAgentHook).BeforeRequest | defined in client.go:31" ]
"(github.com/eatMoreApple/openwechat.UserAgentHook).AfterRequest" [ label="AfterRequest" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.UserAgentHook).AfterRequest | defined in client.go:35" fillcolor="moccasin" ]
}
subgraph "cluster_github.com/eatMoreApple/openwechat.WechatDomain" {
fillcolor="wheat2";
label="(WechatDomain)";
tooltip="type: github.com/eatMoreApple/openwechat.WechatDomain";
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
labelloc="b";
style="rounded,filled";
"(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost | defined in url.go:42" fillcolor="moccasin" label="BaseHost" ]
"(github.com/eatMoreApple/openwechat.WechatDomain).SyncHost" [ fillcolor="moccasin" label="SyncHost" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.WechatDomain).SyncHost | defined in url.go:50" ]
"(github.com/eatMoreApple/openwechat.WechatDomain).FileHost" [ fillcolor="moccasin" label="FileHost" penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.WechatDomain).FileHost | defined in url.go:46" ]
}
subgraph "cluster_github.com/eatMoreApple/openwechat.appmsg" {
penwidth="0.5";
fontsize="15";
fontcolor="#222222";
labelloc="b";
style="rounded,filled";
fillcolor="wheat2";
label="(appmsg)";
tooltip="type: github.com/eatMoreApple/openwechat.appmsg";
"(github.com/eatMoreApple/openwechat.appmsg).XmlByte" [ penwidth="1.5" tooltip="(github.com/eatMoreApple/openwechat.appmsg).XmlByte | defined in message.go:503" fillcolor="moccasin" label="XmlByte" ]
}
}
}
"(*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk" -> "github.com/eatMoreApple/openwechat.GetFileContentType" [ tooltip="at client.go:304: calling [github.com/eatMoreApple/openwechat.GetFileContentType]" ]
"(*github.com/eatMoreApple/openwechat.Self).sendMessageToUser" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg" [ tooltip="at user.go:217: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg]" ]
"github.com/eatMoreApple/openwechat.DefaultBot" -> "github.com/eatMoreApple/openwechat.DefaultCaller" [ tooltip="at bot.go:327: calling [github.com/eatMoreApple/openwechat.DefaultCaller]" ]
"(github.com/eatMoreApple/openwechat.Groups).SendMsg" -> "github.com/eatMoreApple/openwechat.getTotalDuration" [ tooltip="at relations.go:270: calling [github.com/eatMoreApple/openwechat.getTotalDuration]" ]
"(github.com/eatMoreApple/openwechat.Friends).SendFile" -> "github.com/eatMoreApple/openwechat.getTotalDuration" [ tooltip="at relations.go:177: calling [github.com/eatMoreApple/openwechat.getTotalDuration]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg" -> "github.com/eatMoreApple/openwechat.getSuccessSentMessage" [ tooltip="at caller.go:254: calling [github.com/eatMoreApple/openwechat.getSuccessSentMessage]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnVoice$1" -> "(*github.com/eatMoreApple/openwechat.Message).IsVoice" [ tooltip="at message_handle.go:118: calling [(*github.com/eatMoreApple/openwechat.Message).IsVoice]" ]
"(*github.com/eatMoreApple/openwechat.Bot).Login" -> "(*github.com/eatMoreApple/openwechat.Caller).CheckLogin" [ tooltip="at bot.go:116: calling [(*github.com/eatMoreApple/openwechat.Caller).CheckLogin]" ]
"(*github.com/eatMoreApple/openwechat.Message).RevokeMsg" -> "github.com/eatMoreApple/openwechat.XmlFormString" [ tooltip="at message.go:271: calling [github.com/eatMoreApple/openwechat.XmlFormString]" ]
"(*github.com/eatMoreApple/openwechat.Message).ReplyFile" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile" [ tooltip="at message.go:146: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile]" ]
"github.com/eatMoreApple/openwechat.DefaultCaller" -> "github.com/eatMoreApple/openwechat.DefaultClient" [ tooltip="at caller.go:25: calling [github.com/eatMoreApple/openwechat.DefaultClient]" ]
"(*github.com/eatMoreApple/openwechat.Client).SyncCheck" -> "github.com/eatMoreApple/openwechat.GetRandomDeviceId" [ tooltip="at client.go:205: calling [github.com/eatMoreApple/openwechat.GetRandomDeviceId]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify" -> "(github.com/eatMoreApple/openwechat.BaseResponse).Ok" [ tooltip="at caller.go:130: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]" ]
"(*github.com/eatMoreApple/openwechat.Message).Reply" -> "github.com/eatMoreApple/openwechat.NewSendMessage" [ tooltip="at message.go:124: calling [github.com/eatMoreApple/openwechat.NewSendMessage]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact" -> "github.com/eatMoreApple/openwechat.scanJson" [ tooltip="at caller.go:164: calling [github.com/eatMoreApple/openwechat.scanJson]" ]
"(github.com/eatMoreApple/openwechat.Members).Friends" -> "(*github.com/eatMoreApple/openwechat.User).IsFriend" [ tooltip="at user.go:487: calling [(*github.com/eatMoreApple/openwechat.User).IsFriend]" ]
"(*github.com/eatMoreApple/openwechat.Message).Agree" -> "(*github.com/eatMoreApple/openwechat.Message).IsFriendAdd" [ tooltip="at message.go:278: calling [(*github.com/eatMoreApple/openwechat.Message).IsFriendAdd]" ]
"(*github.com/eatMoreApple/openwechat.Bot).webInit" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify" [ tooltip="at bot.go:202: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify]" ]
"(*github.com/eatMoreApple/openwechat.Message).Card" -> "(*github.com/eatMoreApple/openwechat.Message).IsCard" [ tooltip="at message.go:245: calling [(*github.com/eatMoreApple/openwechat.Message).IsCard]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnGroupByGroupName" -> "(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnUser" [ tooltip="at message_handle.go:178: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnUser]" ]
"(*github.com/eatMoreApple/openwechat.Self).FileHelper" -> "(*github.com/eatMoreApple/openwechat.Self).Members" [ tooltip="at user.go:155: calling [(*github.com/eatMoreApple/openwechat.Self).Members]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendAdd" -> "(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler" [ tooltip="at message_handle.go:123: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" ]
"(github.com/eatMoreApple/openwechat.Members).detail" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact" [ tooltip="at user.go:542: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact]\nat user.go:554: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact]" ]
"(*github.com/eatMoreApple/openwechat.Self).UpdateMembersDetail" -> "(github.com/eatMoreApple/openwechat.Members).detail" [ tooltip="at user.go:208: calling [(github.com/eatMoreApple/openwechat.Members).detail]" ]
"(github.com/eatMoreApple/openwechat.Groups).SendImage" -> "github.com/eatMoreApple/openwechat.getTotalDuration" [ tooltip="at relations.go:314: calling [github.com/eatMoreApple/openwechat.getTotalDuration]" ]
"(github.com/eatMoreApple/openwechat.Groups).Last" -> "(github.com/eatMoreApple/openwechat.Groups).Count" [ tooltip="at relations.go:262: calling [(github.com/eatMoreApple/openwechat.Groups).Count]\nat relations.go:263: calling [(github.com/eatMoreApple/openwechat.Groups).Count]" ]
"(*github.com/eatMoreApple/openwechat.SentMessage).ForwardToFriends" -> "(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends" [ tooltip="at message.go:477: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends]" ]
"(*github.com/eatMoreApple/openwechat.Bot).Logout" -> "(*github.com/eatMoreApple/openwechat.Bot).Alive" [ tooltip="at bot.go:142: calling [(*github.com/eatMoreApple/openwechat.Bot).Alive]" ]
"(*github.com/eatMoreApple/openwechat.Self).Friends" -> "(*github.com/eatMoreApple/openwechat.Self).Members" [ tooltip="at user.go:171: calling [(*github.com/eatMoreApple/openwechat.Self).Members]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendByRemarkName$1" -> "(*github.com/eatMoreApple/openwechat.User).IsFriend" [ tooltip="at message_handle.go:168: calling [(*github.com/eatMoreApple/openwechat.User).IsFriend]" ]
"(github.com/eatMoreApple/openwechat.Members).Search" -> "(github.com/eatMoreApple/openwechat.Members).SearchByRemarkName$1" [ tooltip="at user.go:471: calling [(github.com/eatMoreApple/openwechat.Members).SearchByRemarkName$1]" style="dashed" ]
"(*github.com/eatMoreApple/openwechat.Caller).Logout" -> "(*github.com/eatMoreApple/openwechat.Client).Logout" [ tooltip="at caller.go:281: calling [(*github.com/eatMoreApple/openwechat.Client).Logout]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile" -> "github.com/eatMoreApple/openwechat.NewSendMessage" [ tooltip="at caller.go:269: calling [github.com/eatMoreApple/openwechat.NewSendMessage]" ]
"(*github.com/eatMoreApple/openwechat.Self).Groups" -> "(*github.com/eatMoreApple/openwechat.Self).Members" [ tooltip="at user.go:182: calling [(*github.com/eatMoreApple/openwechat.Self).Members]" ]
"(*github.com/eatMoreApple/openwechat.Self).AddFriendIntoManyGroups" -> "(*github.com/eatMoreApple/openwechat.Self).AddFriendsIntoGroup" [ tooltip="at user.go:316: calling [(*github.com/eatMoreApple/openwechat.Self).AddFriendsIntoGroup]" ]
"(github.com/eatMoreApple/openwechat.Groups).SearchByNickName" -> "(github.com/eatMoreApple/openwechat.Groups).Search" [ tooltip="at relations.go:341: calling [(github.com/eatMoreApple/openwechat.Groups).Search]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:454: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Message).IsReceiveRedPacket" -> "(*github.com/eatMoreApple/openwechat.Message).IsSystem" [ tooltip="at message.go:206: calling [(*github.com/eatMoreApple/openwechat.Message).IsSystem]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetContact" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:222: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Message).RevokeMsg" -> "(*github.com/eatMoreApple/openwechat.Message).IsRecalled" [ tooltip="at message.go:267: calling [(*github.com/eatMoreApple/openwechat.Message).IsRecalled]" ]
"(*github.com/eatMoreApple/openwechat.Bot).HotLogin" -> "(*github.com/eatMoreApple/openwechat.Bot).Login" [ tooltip="at bot.go:67: calling [(*github.com/eatMoreApple/openwechat.Bot).Login]\nat bot.go:79: calling [(*github.com/eatMoreApple/openwechat.Bot).Login]" ]
"(*github.com/eatMoreApple/openwechat.Group).SendText" -> "(*github.com/eatMoreApple/openwechat.Self).SendTextToGroup" [ tooltip="at relations.go:211: calling [(*github.com/eatMoreApple/openwechat.Self).SendTextToGroup]" ]
"(*github.com/eatMoreApple/openwechat.Message).init" -> "(*github.com/eatMoreApple/openwechat.Message).IsSendByGroup" [ tooltip="at message.go:311: calling [(*github.com/eatMoreApple/openwechat.Message).IsSendByGroup]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg" -> "github.com/eatMoreApple/openwechat.getSuccessSentMessage" [ tooltip="at caller.go:208: calling [github.com/eatMoreApple/openwechat.getSuccessSentMessage]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile" -> "github.com/eatMoreApple/openwechat.NewFileAppMessage" [ tooltip="at caller.go:264: calling [github.com/eatMoreApple/openwechat.NewFileAppMessage]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).Dispatch" -> "(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).do" [ arrowhead="normalnoneodot" tooltip="at message_handle.go:86: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).do]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxOplog" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxOplog" [ tooltip="at caller.go:213: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxOplog]" ]
"(github.com/eatMoreApple/openwechat.Friends).SendFile" -> "(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends" [ tooltip="at relations.go:187: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxBatchGetContact" -> "github.com/eatMoreApple/openwechat.ToBuffer" [ tooltip="at client.go:245: calling [github.com/eatMoreApple/openwechat.ToBuffer]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebInit" -> "github.com/eatMoreApple/openwechat.ToBuffer" [ tooltip="at client.go:167: calling [github.com/eatMoreApple/openwechat.ToBuffer]" ]
"(*github.com/eatMoreApple/openwechat.Message).ReplyText" -> "(*github.com/eatMoreApple/openwechat.Message).Reply" [ tooltip="at message.go:132: calling [(*github.com/eatMoreApple/openwechat.Message).Reply]" ]
"(*github.com/eatMoreApple/openwechat.Message).GetFile" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxGetMsgImg" [ tooltip="at message.go:229: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxGetMsgImg]" ]
"(*github.com/eatMoreApple/openwechat.Caller).UploadMedia" -> "github.com/eatMoreApple/openwechat.scanJson" [ tooltip="at caller.go:231: calling [github.com/eatMoreApple/openwechat.scanJson]" ]
"(*github.com/eatMoreApple/openwechat.Bot).webInit" -> "(*github.com/eatMoreApple/openwechat.Caller).WebInit" [ tooltip="at bot.go:192: calling [(*github.com/eatMoreApple/openwechat.Caller).WebInit]" ]
"(*github.com/eatMoreApple/openwechat.Client).webWxCheckUpload" -> "github.com/eatMoreApple/openwechat.ToBuffer" [ tooltip="at client.go:653: calling [github.com/eatMoreApple/openwechat.ToBuffer]" ]
"(*github.com/eatMoreApple/openwechat.Self).RemoveMemberFromGroup" -> "(*github.com/eatMoreApple/openwechat.Group).Members" [ tooltip="at user.go:291: calling [(*github.com/eatMoreApple/openwechat.Group).Members]" ]
"(*github.com/eatMoreApple/openwechat.Client).Do" -> "(*github.com/eatMoreApple/openwechat.Client).do" [ tooltip="at client.go:97: calling [(*github.com/eatMoreApple/openwechat.Client).do]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetVoice" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:535: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Bot).asyncCall" -> "(*github.com/eatMoreApple/openwechat.SyncCheckResponse).Success" [ tooltip="at bot.go:231: calling [(*github.com/eatMoreApple/openwechat.SyncCheckResponse).Success]" ]
"(*github.com/eatMoreApple/openwechat.SentMessage).Revoke" -> "(*github.com/eatMoreApple/openwechat.Self).RevokeMessage" [ tooltip="at message.go:472: calling [(*github.com/eatMoreApple/openwechat.Self).RevokeMessage]" ]
"(github.com/eatMoreApple/openwechat.Members).SearchByNickName" -> "(github.com/eatMoreApple/openwechat.Members).Search" [ tooltip="at user.go:449: calling [(github.com/eatMoreApple/openwechat.Members).Search]" ]
"(*github.com/eatMoreApple/openwechat.Self).SendTextToGroup" -> "github.com/eatMoreApple/openwechat.NewTextSendMessage" [ tooltip="at user.go:330: calling [github.com/eatMoreApple/openwechat.NewTextSendMessage]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk" -> "github.com/eatMoreApple/openwechat.parseBaseResponseError" [ tooltip="at client.go:440: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]" ]
"(*github.com/eatMoreApple/openwechat.Bot).webInit$1" -> "(*github.com/eatMoreApple/openwechat.Bot).stopAsyncCALL" [ style="dashed" tooltip="at bot.go:211: calling [(*github.com/eatMoreApple/openwechat.Bot).stopAsyncCALL]" ]
"(*github.com/eatMoreApple/openwechat.Self).SendMessageToFriend" -> "(*github.com/eatMoreApple/openwechat.Self).sendMessageToUser" [ tooltip="at user.go:227: calling [(*github.com/eatMoreApple/openwechat.Self).sendMessageToUser]" ]
"(*github.com/eatMoreApple/openwechat.Self).Mps" -> "(github.com/eatMoreApple/openwechat.Members).MPs" [ tooltip="at user.go:196: calling [(github.com/eatMoreApple/openwechat.Members).MPs]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetMsgImg" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:530: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"github.com/eatMoreApple/openwechat.getMessageType" -> "github.com/eatMoreApple/openwechat.getFileExt" [ tooltip="at parser.go:86: calling [github.com/eatMoreApple/openwechat.getFileExt]" ]
"github.com/eatMoreApple/openwechat.NewMediaSendMessage" -> "github.com/eatMoreApple/openwechat.NewSendMessage" [ tooltip="at message.go:363: calling [github.com/eatMoreApple/openwechat.NewSendMessage]" ]
"(*github.com/eatMoreApple/openwechat.Caller).Logout" -> "github.com/eatMoreApple/openwechat.parseBaseResponseError" [ tooltip="at caller.go:285: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnGroupByGroupName$1" -> "(*github.com/eatMoreApple/openwechat.User).IsGroup" [ tooltip="at message_handle.go:176: calling [(*github.com/eatMoreApple/openwechat.User).IsGroup]" ]
"(*github.com/eatMoreApple/openwechat.Self).SendTextToGroup" -> "(*github.com/eatMoreApple/openwechat.Self).SendMessageToGroup" [ tooltip="at user.go:331: calling [(*github.com/eatMoreApple/openwechat.Self).SendMessageToGroup]" ]
"(*github.com/eatMoreApple/openwechat.Friend).SendMsg" -> "(*github.com/eatMoreApple/openwechat.Self).SendMessageToFriend" [ tooltip="at relations.go:23: calling [(*github.com/eatMoreApple/openwechat.Self).SendMessageToFriend]" ]
"(github.com/eatMoreApple/openwechat.Groups).Search" -> "(github.com/eatMoreApple/openwechat.Groups).Count" [ tooltip="at relations.go:355: calling [(github.com/eatMoreApple/openwechat.Groups).Count]\nat relations.go:358: calling [(github.com/eatMoreApple/openwechat.Groups).Count]" ]
"(*github.com/eatMoreApple/openwechat.Client).RemoveMemberFromChatRoom" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:624: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Message).ReplyImage" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg" [ tooltip="at message.go:139: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg]" ]
"(*github.com/eatMoreApple/openwechat.Message).Card" -> "github.com/eatMoreApple/openwechat.XmlFormString" [ tooltip="at message.go:249: calling [github.com/eatMoreApple/openwechat.XmlFormString]" ]
"(github.com/eatMoreApple/openwechat.Friends).First" -> "(github.com/eatMoreApple/openwechat.Friends).Count" [ tooltip="at relations.go:55: calling [(github.com/eatMoreApple/openwechat.Friends).Count]" ]
"(*github.com/eatMoreApple/openwechat.Client).Do" -> "(*github.com/eatMoreApple/openwechat.Client).setCookie" [ tooltip="at client.go:99: calling [(*github.com/eatMoreApple/openwechat.Client).setCookie]" ]
"(*github.com/eatMoreApple/openwechat.Bot).handleLogin" -> "(*github.com/eatMoreApple/openwechat.Bot).webInit" [ tooltip="at bot.go:184: calling [(*github.com/eatMoreApple/openwechat.Bot).webInit]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxRevokeMsg" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:636: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Bot).Login" -> "(*github.com/eatMoreApple/openwechat.Bot).handleLogin" [ tooltip="at bot.go:126: calling [(*github.com/eatMoreApple/openwechat.Bot).handleLogin]" ]
"(*github.com/eatMoreApple/openwechat.Self).forwardMessage" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg" [ tooltip="at user.go:374: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg]" ]
"(*github.com/eatMoreApple/openwechat.User).GetAvatarResponse" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxGetHeadImg" [ tooltip="at user.go:59: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxGetHeadImg]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriend$1" -> "(*github.com/eatMoreApple/openwechat.Message).IsSendByFriend" [ tooltip="at message_handle.go:145: calling [(*github.com/eatMoreApple/openwechat.Message).IsSendByFriend]" ]
"(*github.com/eatMoreApple/openwechat.Client).sendMessage" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:281: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Message).Receiver" -> "(*github.com/eatMoreApple/openwechat.Message).Sender" [ tooltip="at message.go:89: calling [(*github.com/eatMoreApple/openwechat.Message).Sender]" ]
"(*github.com/eatMoreApple/openwechat.Message).SenderInGroup" -> "(github.com/eatMoreApple/openwechat.Members).First" [ tooltip="at message.go:83: calling [(github.com/eatMoreApple/openwechat.Members).First]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxVerifyUser" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:518: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser" -> "github.com/eatMoreApple/openwechat.parseBaseResponseError" [ tooltip="at caller.go:318: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]" ]
"(*github.com/eatMoreApple/openwechat.Friend).AddIntoGroup" -> "(*github.com/eatMoreApple/openwechat.Self).AddFriendIntoManyGroups" [ tooltip="at relations.go:43: calling [(*github.com/eatMoreApple/openwechat.Self).AddFriendIntoManyGroups]" ]
"(*github.com/eatMoreApple/openwechat.Client).do" -> "(github.com/eatMoreApple/openwechat.UserAgentHook).BeforeRequest" [ style="dashed" tooltip="at client.go:74: calling [(github.com/eatMoreApple/openwechat.UserAgentHook).BeforeRequest]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxStatusNotify" [ tooltip="at caller.go:121: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxStatusNotify]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSync" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxSync" [ tooltip="at caller.go:193: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSync]" ]
"(*github.com/eatMoreApple/openwechat.Message).IsSendRedPacket" -> "(*github.com/eatMoreApple/openwechat.Message).IsSystem" [ tooltip="at message.go:201: calling [(*github.com/eatMoreApple/openwechat.Message).IsSystem]" ]
"github.com/eatMoreApple/openwechat.DefaultCaller" -> "github.com/eatMoreApple/openwechat.NewCaller" [ tooltip="at caller.go:25: calling [github.com/eatMoreApple/openwechat.NewCaller]" ]
"(github.com/eatMoreApple/openwechat.Friends).SendMsg" -> "(*github.com/eatMoreApple/openwechat.Friend).SendMsg" [ tooltip="at relations.go:124: calling [(*github.com/eatMoreApple/openwechat.Friend).SendMsg]" ]
"(*github.com/eatMoreApple/openwechat.Message).GetFile" -> "(*github.com/eatMoreApple/openwechat.Message).HasFile" [ tooltip="at message.go:225: calling [(*github.com/eatMoreApple/openwechat.Message).HasFile]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnCard" -> "(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler" [ tooltip="at message_handle.go:128: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" ]
"github.com/eatMoreApple/openwechat.parseBaseResponseError" -> "github.com/eatMoreApple/openwechat.scanJson" [ tooltip="at caller.go:334: calling [github.com/eatMoreApple/openwechat.scanJson]" ]
"(*github.com/eatMoreApple/openwechat.Message).Receiver" -> "(github.com/eatMoreApple/openwechat.Members).First" [ tooltip="at message.go:96: calling [(github.com/eatMoreApple/openwechat.Members).First]\nat message.go:103: calling [(github.com/eatMoreApple/openwechat.Members).First]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact" -> "(github.com/eatMoreApple/openwechat.BaseResponse).Ok" [ tooltip="at caller.go:167: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]" ]
"(*github.com/eatMoreApple/openwechat.Client).RemoveMemberFromChatRoom" -> "github.com/eatMoreApple/openwechat.ToBuffer" [ tooltip="at client.go:621: calling [github.com/eatMoreApple/openwechat.ToBuffer]" ]
"(*github.com/eatMoreApple/openwechat.Group).SendFile" -> "(*github.com/eatMoreApple/openwechat.Self).SendFileToGroup" [ tooltip="at relations.go:221: calling [(*github.com/eatMoreApple/openwechat.Self).SendFileToGroup]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnText" -> "(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler" [ tooltip="at message_handle.go:108: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile" -> "(*github.com/eatMoreApple/openwechat.Caller).UploadMedia" [ tooltip="at caller.go:258: calling [(*github.com/eatMoreApple/openwechat.Caller).UploadMedia]" ]
"(github.com/eatMoreApple/openwechat.Groups).SendMsg" -> "(*github.com/eatMoreApple/openwechat.Group).SendMsg" [ tooltip="at relations.go:283: calling [(*github.com/eatMoreApple/openwechat.Group).SendMsg]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnImage$1" -> "(*github.com/eatMoreApple/openwechat.Message).IsPicture" [ tooltip="at message_handle.go:113: calling [(*github.com/eatMoreApple/openwechat.Message).IsPicture]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxStatusNotify" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:178: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Client).AddMemberIntoChatRoom" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:602: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Self).FileHelper" -> "github.com/eatMoreApple/openwechat.NewFriendHelper" [ tooltip="at user.go:161: calling [github.com/eatMoreApple/openwechat.NewFriendHelper]" ]
"(*github.com/eatMoreApple/openwechat.Self).SendMessageToGroup" -> "(*github.com/eatMoreApple/openwechat.Self).sendMessageToUser" [ tooltip="at user.go:325: calling [(*github.com/eatMoreApple/openwechat.Self).sendMessageToUser]" ]
"(github.com/eatMoreApple/openwechat.Friends).SendImage" -> "(*github.com/eatMoreApple/openwechat.Friend).SendImage" [ tooltip="at relations.go:168: calling [(*github.com/eatMoreApple/openwechat.Friend).SendImage]" ]
"(*github.com/eatMoreApple/openwechat.Message).Receiver" -> "(*github.com/eatMoreApple/openwechat.Message).IsSendByGroup" [ tooltip="at message.go:88: calling [(*github.com/eatMoreApple/openwechat.Message).IsSendByGroup]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact" -> "github.com/eatMoreApple/openwechat.scanJson" [ tooltip="at caller.go:182: calling [github.com/eatMoreApple/openwechat.scanJson]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxStatusNotify" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:194: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetContact" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:229: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Client).CheckLogin" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:147: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Self).Friends" -> "(github.com/eatMoreApple/openwechat.Members).Friends" [ tooltip="at user.go:174: calling [(github.com/eatMoreApple/openwechat.Members).Friends]" ]
"(*github.com/eatMoreApple/openwechat.Self).FileHelper" -> "(github.com/eatMoreApple/openwechat.Members).First" [ tooltip="at user.go:163: calling [(github.com/eatMoreApple/openwechat.Members).First]" ]
"(*github.com/eatMoreApple/openwechat.User).SaveAvatar" -> "(*github.com/eatMoreApple/openwechat.User).GetAvatarResponse" [ tooltip="at user.go:64: calling [(*github.com/eatMoreApple/openwechat.User).GetAvatarResponse]" ]
"(*github.com/eatMoreApple/openwechat.Client).do" -> "(github.com/eatMoreApple/openwechat.UserAgentHook).AfterRequest" [ tooltip="at client.go:78: calling [(github.com/eatMoreApple/openwechat.UserAgentHook).AfterRequest]" style="dashed" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxBatchGetContact" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:234: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetVideo" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:552: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Group).AddFriendsIn" -> "(*github.com/eatMoreApple/openwechat.Self).AddFriendsIntoGroup" [ tooltip="at relations.go:235: calling [(*github.com/eatMoreApple/openwechat.Self).AddFriendsIntoGroup]" ]
"(github.com/eatMoreApple/openwechat.Friends).Last" -> "(github.com/eatMoreApple/openwechat.Friends).Count" [ tooltip="at relations.go:63: calling [(github.com/eatMoreApple/openwechat.Friends).Count]\nat relations.go:64: calling [(github.com/eatMoreApple/openwechat.Friends).Count]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsg" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:287: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendByNickName" -> "(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler" [ tooltip="at message_handle.go:140: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetHeadImg" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:299: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Self).Members" -> "(*github.com/eatMoreApple/openwechat.Self).updateMembers" [ tooltip="at user.go:129: calling [(*github.com/eatMoreApple/openwechat.Self).updateMembers]" ]
"(github.com/eatMoreApple/openwechat.Friends).SendText" -> "github.com/eatMoreApple/openwechat.getTotalDuration" [ tooltip="at relations.go:133: calling [github.com/eatMoreApple/openwechat.getTotalDuration]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile" -> "(github.com/eatMoreApple/openwechat.appmsg).XmlByte" [ tooltip="at caller.go:265: calling [(github.com/eatMoreApple/openwechat.appmsg).XmlByte]" ]
"(*github.com/eatMoreApple/openwechat.Self).FileHelper" -> "(github.com/eatMoreApple/openwechat.Members).SearchByUserName" [ tooltip="at user.go:159: calling [(github.com/eatMoreApple/openwechat.Members).SearchByUserName]" ]
"github.com/eatMoreApple/openwechat.parseMessageResponseError" -> "(github.com/eatMoreApple/openwechat.BaseResponse).Ok" [ tooltip="at caller.go:352: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]" ]
"(github.com/eatMoreApple/openwechat.Members).SearchByUserName" -> "(github.com/eatMoreApple/openwechat.Members).Search" [ tooltip="at user.go:444: calling [(github.com/eatMoreApple/openwechat.Members).Search]" ]
"(*github.com/eatMoreApple/openwechat.Bot).Logout" -> "(*github.com/eatMoreApple/openwechat.Caller).Logout" [ tooltip="at bot.go:147: calling [(*github.com/eatMoreApple/openwechat.Caller).Logout]" ]
"(github.com/eatMoreApple/openwechat.Members).detail" -> "(github.com/eatMoreApple/openwechat.Members).Count" [ tooltip="at user.go:522: calling [(github.com/eatMoreApple/openwechat.Members).Count]" ]
"github.com/eatMoreApple/openwechat.parseMessageResponseError" -> "github.com/eatMoreApple/openwechat.scanJson" [ tooltip="at caller.go:348: calling [github.com/eatMoreApple/openwechat.scanJson]" ]
"(*github.com/eatMoreApple/openwechat.Bot).webInit$1" -> "(*github.com/eatMoreApple/openwechat.Bot).asyncCall" [ tooltip="at bot.go:210: calling [(*github.com/eatMoreApple/openwechat.Bot).asyncCall]" ]
"(*github.com/eatMoreApple/openwechat.Self).Groups" -> "(github.com/eatMoreApple/openwechat.Members).Groups" [ tooltip="at user.go:185: calling [(github.com/eatMoreApple/openwechat.Members).Groups]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxOplog" -> "github.com/eatMoreApple/openwechat.parseBaseResponseError" [ tooltip="at caller.go:217: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]" ]
"(github.com/eatMoreApple/openwechat.Groups).SearchByUserName" -> "(github.com/eatMoreApple/openwechat.Groups).Search" [ tooltip="at relations.go:336: calling [(github.com/eatMoreApple/openwechat.Groups).Search]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg" [ tooltip="at caller.go:275: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnUser$1" -> "(*github.com/eatMoreApple/openwechat.Message).Sender" [ tooltip="at message_handle.go:156: calling [(*github.com/eatMoreApple/openwechat.Message).Sender]" ]
"(*github.com/eatMoreApple/openwechat.Message).init" -> "(*github.com/eatMoreApple/openwechat.Message).Receiver" [ tooltip="at message.go:315: calling [(*github.com/eatMoreApple/openwechat.Message).Receiver]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebInit" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:162: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Bot).Logout" -> "(*github.com/eatMoreApple/openwechat.Bot).stopAsyncCALL" [ tooltip="at bot.go:150: calling [(*github.com/eatMoreApple/openwechat.Bot).stopAsyncCALL]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg" -> "(*github.com/eatMoreApple/openwechat.Client).sendMessage" [ tooltip="at client.go:472: calling [(*github.com/eatMoreApple/openwechat.Client).sendMessage]" ]
"(*github.com/eatMoreApple/openwechat.Self).UpdateMembersDetail" -> "(*github.com/eatMoreApple/openwechat.Self).Members" [ tooltip="at user.go:204: calling [(*github.com/eatMoreApple/openwechat.Self).Members]" ]
"(*github.com/eatMoreApple/openwechat.Message).SenderInGroup" -> "(*github.com/eatMoreApple/openwechat.Message).Sender" [ tooltip="at message.go:71: calling [(*github.com/eatMoreApple/openwechat.Message).Sender]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxBatchGetContact" [ tooltip="at caller.go:176: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxBatchGetContact]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxStatusNotify" -> "github.com/eatMoreApple/openwechat.ToBuffer" [ tooltip="at client.go:191: calling [github.com/eatMoreApple/openwechat.ToBuffer]" ]
"(github.com/eatMoreApple/openwechat.Members).detail" -> "(github.com/eatMoreApple/openwechat.Members).SetOwner" [ tooltip="at user.go:561: calling [(github.com/eatMoreApple/openwechat.Members).SetOwner]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxOplog" -> "github.com/eatMoreApple/openwechat.ToBuffer" [ tooltip="at client.go:487: calling [github.com/eatMoreApple/openwechat.ToBuffer]" ]
"(github.com/eatMoreApple/openwechat.Members).SearchByRemarkName" -> "(github.com/eatMoreApple/openwechat.Members).Search" [ tooltip="at user.go:454: calling [(github.com/eatMoreApple/openwechat.Members).Search]" ]
"(*github.com/eatMoreApple/openwechat.Group).SendMsg" -> "(*github.com/eatMoreApple/openwechat.Self).SendMessageToGroup" [ tooltip="at relations.go:206: calling [(*github.com/eatMoreApple/openwechat.Self).SendMessageToGroup]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetHeadImg" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:297: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(github.com/eatMoreApple/openwechat.BaseResponse).Error" -> "github.com/eatMoreApple/openwechat.getResponseErrorWithRetCode" [ tooltip="at items.go:49: calling [github.com/eatMoreApple/openwechat.getResponseErrorWithRetCode]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsg" -> "(*github.com/eatMoreApple/openwechat.Client).sendMessage" [ tooltip="at client.go:292: calling [(*github.com/eatMoreApple/openwechat.Client).sendMessage]" ]
"(*github.com/eatMoreApple/openwechat.Message).HasFile" -> "(*github.com/eatMoreApple/openwechat.Message).IsVideo" [ tooltip="at message.go:220: calling [(*github.com/eatMoreApple/openwechat.Message).IsVideo]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxRevokeMsg" -> "github.com/eatMoreApple/openwechat.ToBuffer" [ tooltip="at client.go:635: calling [github.com/eatMoreApple/openwechat.ToBuffer]" ]
"(*github.com/eatMoreApple/openwechat.Message).SenderInGroup" -> "(*github.com/eatMoreApple/openwechat.Message).IsSendByGroup" [ tooltip="at message.go:68: calling [(*github.com/eatMoreApple/openwechat.Message).IsSendByGroup]" ]
"(*github.com/eatMoreApple/openwechat.Message).SenderInGroup" -> "(*github.com/eatMoreApple/openwechat.User).Detail" [ tooltip="at message.go:75: calling [(*github.com/eatMoreApple/openwechat.User).Detail]" ]
"(github.com/eatMoreApple/openwechat.Mps).Last" -> "(github.com/eatMoreApple/openwechat.Mps).Count" [ tooltip="at relations.go:399: calling [(github.com/eatMoreApple/openwechat.Mps).Count]\nat relations.go:400: calling [(github.com/eatMoreApple/openwechat.Mps).Count]" ]
"github.com/eatMoreApple/openwechat.DefaultClient" -> "github.com/eatMoreApple/openwechat.NewClient" [ tooltip="at client.go:63: calling [github.com/eatMoreApple/openwechat.NewClient]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebInit" -> "(*github.com/eatMoreApple/openwechat.Client).WebInit" [ tooltip="at caller.go:107: calling [(*github.com/eatMoreApple/openwechat.Client).WebInit]" ]
"(*github.com/eatMoreApple/openwechat.SyncCheckResponse).NorMal" -> "(*github.com/eatMoreApple/openwechat.SyncCheckResponse).Success" [ tooltip="at items.go:141: calling [(*github.com/eatMoreApple/openwechat.SyncCheckResponse).Success]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxSync" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:268: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxRevokeMsg" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:638: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Self).RevokeMessage" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg" [ tooltip="at user.go:354: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg]" ]
"(*github.com/eatMoreApple/openwechat.Bot).hotLoginInit" -> "(*github.com/eatMoreApple/openwechat.JsonFileHotReloadStorage).GetHotReloadStorageItem" [ style="dashed" tooltip="at bot.go:88: calling [(*github.com/eatMoreApple/openwechat.JsonFileHotReloadStorage).GetHotReloadStorageItem]" ]
"(*github.com/eatMoreApple/openwechat.Bot).HotLogin" -> "(*github.com/eatMoreApple/openwechat.JsonFileHotReloadStorage).Load" [ style="dashed" tooltip="at bot.go:66: calling [(*github.com/eatMoreApple/openwechat.JsonFileHotReloadStorage).Load]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetVideo" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:546: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Message).Agree" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser" [ tooltip="at message.go:285: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser]" ]
"github.com/eatMoreApple/openwechat.parseBaseResponseError" -> "(github.com/eatMoreApple/openwechat.BaseResponse).Ok" [ tooltip="at caller.go:337: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebInit" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:173: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Self).SendTextToFriend" -> "github.com/eatMoreApple/openwechat.NewTextSendMessage" [ tooltip="at user.go:232: calling [github.com/eatMoreApple/openwechat.NewTextSendMessage]" ]
"(github.com/eatMoreApple/openwechat.Friends).Search" -> "(github.com/eatMoreApple/openwechat.Friends).SearchByRemarkName$1" [ style="dashed" tooltip="at relations.go:98: calling [(github.com/eatMoreApple/openwechat.Friends).SearchByRemarkName$1]" ]
"(github.com/eatMoreApple/openwechat.Friends).SearchByRemarkName" -> "(github.com/eatMoreApple/openwechat.Friends).Search" [ tooltip="at relations.go:81: calling [(github.com/eatMoreApple/openwechat.Friends).Search]" ]
"(*github.com/eatMoreApple/openwechat.Message).Reply" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg" [ tooltip="at message.go:127: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendByRemarkName" -> "(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnUser" [ tooltip="at message_handle.go:170: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnUser]" ]
"(github.com/eatMoreApple/openwechat.Friends).SendText" -> "(*github.com/eatMoreApple/openwechat.Friend).SendText" [ tooltip="at relations.go:146: calling [(*github.com/eatMoreApple/openwechat.Friend).SendText]" ]
"(github.com/eatMoreApple/openwechat.Friends).Search" -> "(github.com/eatMoreApple/openwechat.Friends).SearchByNickName$1" [ tooltip="at relations.go:98: calling [(github.com/eatMoreApple/openwechat.Friends).SearchByNickName$1]" style="dashed" ]
"(*github.com/eatMoreApple/openwechat.Bot).handleLogin" -> "(*github.com/eatMoreApple/openwechat.Bot).DumpHotReloadStorage" [ tooltip="at bot.go:179: calling [(*github.com/eatMoreApple/openwechat.Bot).DumpHotReloadStorage]" ]
"(*github.com/eatMoreApple/openwechat.Client).Logout" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:572: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom" -> "github.com/eatMoreApple/openwechat.parseBaseResponseError" [ tooltip="at caller.go:297: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnUser$1" -> "(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendByRemarkName$1" [ style="dashed" tooltip="at message_handle.go:160: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendByRemarkName$1]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxVerifyUser" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxVerifyUser" [ tooltip="at caller.go:314: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxVerifyUser]" ]
"(github.com/eatMoreApple/openwechat.Groups).SearchByRemarkName" -> "(github.com/eatMoreApple/openwechat.Groups).Search" [ tooltip="at relations.go:346: calling [(github.com/eatMoreApple/openwechat.Groups).Search]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk" -> "github.com/eatMoreApple/openwechat.getMessageType" [ tooltip="at client.go:330: calling [github.com/eatMoreApple/openwechat.getMessageType]" ]
"(github.com/eatMoreApple/openwechat.Members).First" -> "(github.com/eatMoreApple/openwechat.Members).Count" [ tooltip="at user.go:418: calling [(github.com/eatMoreApple/openwechat.Members).Count]" ]
"github.com/eatMoreApple/openwechat.NewTextSendMessage" -> "github.com/eatMoreApple/openwechat.NewSendMessage" [ tooltip="at message.go:358: calling [github.com/eatMoreApple/openwechat.NewSendMessage]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnUser$1" -> "(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnGroupByGroupName$1" [ style="dashed" tooltip="at message_handle.go:160: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnGroupByGroupName$1]" ]
"(*github.com/eatMoreApple/openwechat.Caller).CheckLogin" -> "(*github.com/eatMoreApple/openwechat.Client).CheckLogin" [ tooltip="at caller.go:52: calling [(*github.com/eatMoreApple/openwechat.Client).CheckLogin]" ]
"(*github.com/eatMoreApple/openwechat.Self).forwardMessage" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg" [ tooltip="at user.go:382: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg]" ]
"(*github.com/eatMoreApple/openwechat.Self).SendImageToGroup" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg" [ tooltip="at user.go:338: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg]" ]
"(*github.com/eatMoreApple/openwechat.Message).GetFile" -> "(*github.com/eatMoreApple/openwechat.Message).IsVoice" [ tooltip="at message.go:231: calling [(*github.com/eatMoreApple/openwechat.Message).IsVoice]" ]
"(github.com/eatMoreApple/openwechat.Groups).SendText" -> "github.com/eatMoreApple/openwechat.getTotalDuration" [ tooltip="at relations.go:292: calling [github.com/eatMoreApple/openwechat.getTotalDuration]" ]
"(*github.com/eatMoreApple/openwechat.Friend).SetRemarkName" -> "(*github.com/eatMoreApple/openwechat.Self).SetRemarkNameToFriend" [ tooltip="at relations.go:18: calling [(*github.com/eatMoreApple/openwechat.Self).SetRemarkNameToFriend]" ]
"(*github.com/eatMoreApple/openwechat.Bot).asyncCall" -> "(*github.com/eatMoreApple/openwechat.SyncCheckResponse).NorMal" [ tooltip="at bot.go:235: calling [(*github.com/eatMoreApple/openwechat.SyncCheckResponse).NorMal]" ]
"(*github.com/eatMoreApple/openwechat.Bot).webInit" -> "(*github.com/eatMoreApple/openwechat.Bot).webInit$1" [ arrowhead="normalnoneodot" tooltip="at bot.go:206: calling [(*github.com/eatMoreApple/openwechat.Bot).webInit$1]" ]
"(github.com/eatMoreApple/openwechat.Groups).Search" -> "(github.com/eatMoreApple/openwechat.Groups).SearchByNickName$1" [ style="dashed" tooltip="at relations.go:363: calling [(github.com/eatMoreApple/openwechat.Groups).SearchByNickName$1]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendByNickName$1" -> "(*github.com/eatMoreApple/openwechat.Message).IsSendByFriend" [ tooltip="at message_handle.go:134: calling [(*github.com/eatMoreApple/openwechat.Message).IsSendByFriend]" ]
"(github.com/eatMoreApple/openwechat.Mps).Search" -> "(github.com/eatMoreApple/openwechat.Mps).Count" [ tooltip="at relations.go:411: calling [(github.com/eatMoreApple/openwechat.Mps).Count]\nat relations.go:414: calling [(github.com/eatMoreApple/openwechat.Mps).Count]" ]
"(*github.com/eatMoreApple/openwechat.Self).SetRemarkNameToFriend" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxOplog" [ tooltip="at user.go:254: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxOplog]" ]
"(*github.com/eatMoreApple/openwechat.Bot).getNewWechatMessage" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxSync" [ tooltip="at bot.go:254: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSync]" ]
"(*github.com/eatMoreApple/openwechat.Bot).asyncCall" -> "(*github.com/eatMoreApple/openwechat.Bot).getNewWechatMessage" [ tooltip="at bot.go:236: calling [(*github.com/eatMoreApple/openwechat.Bot).getNewWechatMessage]" ]
"github.com/eatMoreApple/openwechat.NewFileAppMessage" -> "github.com/eatMoreApple/openwechat.getFileExt" [ tooltip="at message.go:512: calling [github.com/eatMoreApple/openwechat.getFileExt]" ]
"(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToGroups" -> "(*github.com/eatMoreApple/openwechat.Self).forwardMessage" [ tooltip="at user.go:405: calling [(*github.com/eatMoreApple/openwechat.Self).forwardMessage]" ]
"(*github.com/eatMoreApple/openwechat.Client).AddMemberIntoChatRoom" -> "github.com/eatMoreApple/openwechat.ToBuffer" [ tooltip="at client.go:599: calling [github.com/eatMoreApple/openwechat.ToBuffer]" ]
"(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends" -> "(*github.com/eatMoreApple/openwechat.Self).forwardMessage" [ tooltip="at user.go:396: calling [(*github.com/eatMoreApple/openwechat.Self).forwardMessage]" ]
"(*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom" -> "github.com/eatMoreApple/openwechat.parseBaseResponseError" [ tooltip="at caller.go:309: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]" ]
"(*github.com/eatMoreApple/openwechat.Self).AddFriendsIntoGroup" -> "(*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom" [ tooltip="at user.go:278: calling [(*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetMedia" -> "github.com/eatMoreApple/openwechat.getWebWxDataTicket" [ tooltip="at client.go:564: calling [github.com/eatMoreApple/openwechat.getWebWxDataTicket]" ]
"(github.com/eatMoreApple/openwechat.Friends).SendMsg" -> "(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends" [ tooltip="at relations.go:121: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends]" ]
"(*github.com/eatMoreApple/openwechat.Group).RemoveMembers" -> "(*github.com/eatMoreApple/openwechat.Self).RemoveMemberFromGroup" [ tooltip="at relations.go:242: calling [(*github.com/eatMoreApple/openwechat.Self).RemoveMemberFromGroup]" ]
"(*github.com/eatMoreApple/openwechat.Caller).SyncCheck" -> "(*github.com/eatMoreApple/openwechat.Client).SyncCheck" [ tooltip="at caller.go:138: calling [(*github.com/eatMoreApple/openwechat.Client).SyncCheck]" ]
"(*github.com/eatMoreApple/openwechat.Bot).asyncCall" -> "(*github.com/eatMoreApple/openwechat.Caller).SyncCheck" [ tooltip="at bot.go:226: calling [(*github.com/eatMoreApple/openwechat.Caller).SyncCheck]" ]
"(*github.com/eatMoreApple/openwechat.Bot).asyncCall" -> "(*github.com/eatMoreApple/openwechat.Bot).Alive" [ tooltip="at bot.go:224: calling [(*github.com/eatMoreApple/openwechat.Bot).Alive]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnGroup$1" -> "(*github.com/eatMoreApple/openwechat.Message).IsSendByGroup" [ tooltip="at message_handle.go:150: calling [(*github.com/eatMoreApple/openwechat.Message).IsSendByGroup]" ]
"(github.com/eatMoreApple/openwechat.Groups).SendImage" -> "(*github.com/eatMoreApple/openwechat.Group).SendImage" [ tooltip="at relations.go:327: calling [(*github.com/eatMoreApple/openwechat.Group).SendImage]" ]
"(*github.com/eatMoreApple/openwechat.Message).GetFile" -> "(*github.com/eatMoreApple/openwechat.Message).IsMedia" [ tooltip="at message.go:237: calling [(*github.com/eatMoreApple/openwechat.Message).IsMedia]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg" -> "(*github.com/eatMoreApple/openwechat.Client).sendMessage" [ tooltip="at client.go:461: calling [(*github.com/eatMoreApple/openwechat.Client).sendMessage]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebInit" -> "github.com/eatMoreApple/openwechat.scanJson" [ tooltip="at caller.go:113: calling [github.com/eatMoreApple/openwechat.scanJson]" ]
"(*github.com/eatMoreApple/openwechat.Self).forwardMessage" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg" [ tooltip="at user.go:366: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxVerifyUser" -> "github.com/eatMoreApple/openwechat.ToBuffer" [ tooltip="at client.go:515: calling [github.com/eatMoreApple/openwechat.ToBuffer]" ]
"(github.com/eatMoreApple/openwechat.Friends).SearchByNickName" -> "(github.com/eatMoreApple/openwechat.Friends).Search" [ tooltip="at relations.go:76: calling [(github.com/eatMoreApple/openwechat.Friends).Search]" ]
"(*github.com/eatMoreApple/openwechat.Self).AddFriendsIntoGroup" -> "(github.com/eatMoreApple/openwechat.Friend).String" [ tooltip="at user.go:272: calling [(github.com/eatMoreApple/openwechat.Friend).String]" ]
"(*github.com/eatMoreApple/openwechat.Bot).handleLogin" -> "(*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo" [ tooltip="at bot.go:159: calling [(*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSendMsg" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsg" [ tooltip="at caller.go:207: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsg]" ]
"(github.com/eatMoreApple/openwechat.Mps).First" -> "(github.com/eatMoreApple/openwechat.Mps).Count" [ tooltip="at relations.go:391: calling [(github.com/eatMoreApple/openwechat.Mps).Count]" ]
"(*github.com/eatMoreApple/openwechat.Message).GetFile" -> "(*github.com/eatMoreApple/openwechat.Message).IsVideo" [ tooltip="at message.go:234: calling [(*github.com/eatMoreApple/openwechat.Message).IsVideo]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetMedia" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:567: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Caller).UploadMedia" -> "(github.com/eatMoreApple/openwechat.BaseResponse).Ok" [ tooltip="at caller.go:234: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxSync" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:253: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg" -> "github.com/eatMoreApple/openwechat.parseBaseResponseError" [ tooltip="at caller.go:327: calling [github.com/eatMoreApple/openwechat.parseBaseResponseError]" ]
"(*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom" -> "(*github.com/eatMoreApple/openwechat.Client).RemoveMemberFromChatRoom" [ tooltip="at caller.go:305: calling [(*github.com/eatMoreApple/openwechat.Client).RemoveMemberFromChatRoom]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg" [ tooltip="at caller.go:270: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg]" ]
"(*github.com/eatMoreApple/openwechat.Message).GetFile" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxGetVoice" [ tooltip="at message.go:232: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxGetVoice]" ]
"(*github.com/eatMoreApple/openwechat.Message).FriendAddMessageContent" -> "(*github.com/eatMoreApple/openwechat.Message).IsFriendAdd" [ tooltip="at message.go:256: calling [(*github.com/eatMoreApple/openwechat.Message).IsFriendAdd]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxOplog" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:490: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(github.com/eatMoreApple/openwechat.Members).Search" -> "(github.com/eatMoreApple/openwechat.Members).SearchByNickName$1" [ style="dashed" tooltip="at user.go:471: calling [(github.com/eatMoreApple/openwechat.Members).SearchByNickName$1]" ]
"(github.com/eatMoreApple/openwechat.Members).Search" -> "(github.com/eatMoreApple/openwechat.Members).SearchByUserName$1" [ tooltip="at user.go:471: calling [(github.com/eatMoreApple/openwechat.Members).SearchByUserName$1]" style="dashed" ]
"(*github.com/eatMoreApple/openwechat.Bot).Login" -> "(*github.com/eatMoreApple/openwechat.Caller).GetLoginUUID" [ tooltip="at bot.go:106: calling [(*github.com/eatMoreApple/openwechat.Caller).GetLoginUUID]" ]
"(*github.com/eatMoreApple/openwechat.Bot).HotLogin" -> "(*github.com/eatMoreApple/openwechat.Bot).webInit" [ tooltip="at bot.go:76: calling [(*github.com/eatMoreApple/openwechat.Bot).webInit]" ]
"(github.com/eatMoreApple/openwechat.Friends).Search" -> "(github.com/eatMoreApple/openwechat.Friends).Count" [ tooltip="at relations.go:90: calling [(github.com/eatMoreApple/openwechat.Friends).Count]\nat relations.go:93: calling [(github.com/eatMoreApple/openwechat.Friends).Count]" ]
"(github.com/eatMoreApple/openwechat.Groups).SendMsg" -> "(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToGroups" [ tooltip="at relations.go:280: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToGroups]" ]
"(github.com/eatMoreApple/openwechat.Friends).SendImage" -> "(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends" [ tooltip="at relations.go:165: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendAdd$1" -> "(*github.com/eatMoreApple/openwechat.Message).IsFriendAdd" [ tooltip="at message_handle.go:123: calling [(*github.com/eatMoreApple/openwechat.Message).IsFriendAdd]" ]
"(github.com/eatMoreApple/openwechat.Friends).SendFile" -> "(*github.com/eatMoreApple/openwechat.Friend).SendFile" [ tooltip="at relations.go:190: calling [(*github.com/eatMoreApple/openwechat.Friend).SendFile]" ]
"(*github.com/eatMoreApple/openwechat.Client).GetLoginInfo" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:157: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg" -> "(*github.com/eatMoreApple/openwechat.Caller).UploadMedia" [ tooltip="at caller.go:246: calling [(*github.com/eatMoreApple/openwechat.Caller).UploadMedia]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxBatchGetContact" -> "github.com/eatMoreApple/openwechat.NewUserDetailItemList" [ tooltip="at client.go:239: calling [github.com/eatMoreApple/openwechat.NewUserDetailItemList]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact" -> "(github.com/eatMoreApple/openwechat.BaseResponse).Ok" [ tooltip="at caller.go:185: calling [(github.com/eatMoreApple/openwechat.BaseResponse).Ok]" ]
"(*github.com/eatMoreApple/openwechat.User).Detail" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact" [ tooltip="at user.go:89: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxBatchGetContact]" ]
"(github.com/eatMoreApple/openwechat.Members).Last" -> "(github.com/eatMoreApple/openwechat.Members).Count" [ tooltip="at user.go:427: calling [(github.com/eatMoreApple/openwechat.Members).Count]\nat user.go:428: calling [(github.com/eatMoreApple/openwechat.Members).Count]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).Dispatch" -> "(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).do" [ tooltip="at message_handle.go:88: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).do]" ]
"(*github.com/eatMoreApple/openwechat.Client).Logout" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:579: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Self).SendTextToFriend" -> "(*github.com/eatMoreApple/openwechat.Self).SendMessageToFriend" [ tooltip="at user.go:233: calling [(*github.com/eatMoreApple/openwechat.Self).SendMessageToFriend]" ]
"(*github.com/eatMoreApple/openwechat.Caller).AddFriendIntoChatRoom" -> "(*github.com/eatMoreApple/openwechat.Client).AddMemberIntoChatRoom" [ tooltip="at caller.go:293: calling [(*github.com/eatMoreApple/openwechat.Client).AddMemberIntoChatRoom]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxBatchGetContact" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:248: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo" -> "(*github.com/eatMoreApple/openwechat.Client).GetLoginInfo" [ tooltip="at caller.go:84: calling [(*github.com/eatMoreApple/openwechat.Client).GetLoginInfo]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxGetContact" [ tooltip="at caller.go:158: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxGetContact]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnUser" -> "(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler" [ tooltip="at message_handle.go:162: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" ]
"(*github.com/eatMoreApple/openwechat.Client).GetLoginUUID" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:126: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Caller).GetLoginUUID" -> "(*github.com/eatMoreApple/openwechat.Client).GetLoginUUID" [ tooltip="at caller.go:30: calling [(*github.com/eatMoreApple/openwechat.Client).GetLoginUUID]" ]
"(*github.com/eatMoreApple/openwechat.Self).SendFileToGroup" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile" [ tooltip="at user.go:345: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile]" ]
"(*github.com/eatMoreApple/openwechat.Friend).SendFile" -> "(*github.com/eatMoreApple/openwechat.Self).SendFileToFriend" [ tooltip="at relations.go:38: calling [(*github.com/eatMoreApple/openwechat.Self).SendFileToFriend]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSync" -> "github.com/eatMoreApple/openwechat.scanJson" [ tooltip="at caller.go:199: calling [github.com/eatMoreApple/openwechat.scanJson]" ]
"(github.com/eatMoreApple/openwechat.Members).MPs" -> "(*github.com/eatMoreApple/openwechat.User).IsMP" [ tooltip="at user.go:509: calling [(*github.com/eatMoreApple/openwechat.User).IsMP]" ]
"(*github.com/eatMoreApple/openwechat.Message).GetFile" -> "(*github.com/eatMoreApple/openwechat.Message).IsPicture" [ tooltip="at message.go:228: calling [(*github.com/eatMoreApple/openwechat.Message).IsPicture]" ]
"(*github.com/eatMoreApple/openwechat.Message).GetFile" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxGetVideo" [ tooltip="at message.go:235: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxGetVideo]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxVerifyUser" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:496: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Client).AddMemberIntoChatRoom" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:584: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Message).IsSendByFriend" -> "(*github.com/eatMoreApple/openwechat.Message).IsSendBySelf" [ tooltip="at message.go:114: calling [(*github.com/eatMoreApple/openwechat.Message).IsSendBySelf]" ]
"(github.com/eatMoreApple/openwechat.Members).Search" -> "(github.com/eatMoreApple/openwechat.Members).Count" [ tooltip="at user.go:463: calling [(github.com/eatMoreApple/openwechat.Members).Count]" ]
"(github.com/eatMoreApple/openwechat.Groups).Search" -> "(github.com/eatMoreApple/openwechat.Groups).SearchByUserName$1" [ style="dashed" tooltip="at relations.go:363: calling [(github.com/eatMoreApple/openwechat.Groups).SearchByUserName$1]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).do" -> "(*github.com/eatMoreApple/openwechat.MessageContext).Next" [ tooltip="at message_handle.go:93: calling [(*github.com/eatMoreApple/openwechat.MessageContext).Next]" ]
"(*github.com/eatMoreApple/openwechat.Message).SenderInGroup" -> "(github.com/eatMoreApple/openwechat.Members).SearchByUserName" [ tooltip="at message.go:79: calling [(github.com/eatMoreApple/openwechat.Members).SearchByUserName]" ]
"github.com/eatMoreApple/openwechat.DefaultBot" -> "github.com/eatMoreApple/openwechat.NewBot" [ tooltip="at bot.go:329: calling [github.com/eatMoreApple/openwechat.NewBot]" ]
"(*github.com/eatMoreApple/openwechat.Self).AddFriendsIntoGroup" -> "(*github.com/eatMoreApple/openwechat.Group).Members" [ tooltip="at user.go:264: calling [(*github.com/eatMoreApple/openwechat.Group).Members]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetMedia" -> "(github.com/eatMoreApple/openwechat.WechatDomain).FileHost" [ tooltip="at client.go:557: calling [(github.com/eatMoreApple/openwechat.WechatDomain).FileHost]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetVoice" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:541: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:434: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Message).HasFile" -> "(*github.com/eatMoreApple/openwechat.Message).IsPicture" [ tooltip="at message.go:220: calling [(*github.com/eatMoreApple/openwechat.Message).IsPicture]" ]
"(*github.com/eatMoreApple/openwechat.User).IsFriend" -> "(*github.com/eatMoreApple/openwechat.User).IsGroup" [ tooltip="at user.go:100: calling [(*github.com/eatMoreApple/openwechat.User).IsGroup]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnVoice" -> "(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler" [ tooltip="at message_handle.go:118: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" ]
"(*github.com/eatMoreApple/openwechat.User).Detail" -> "(github.com/eatMoreApple/openwechat.Members).First" [ tooltip="at user.go:93: calling [(github.com/eatMoreApple/openwechat.Members).First]" ]
"(*github.com/eatMoreApple/openwechat.Bot).DumpHotReloadStorage" -> "(*github.com/eatMoreApple/openwechat.Client).GetCookieMap" [ tooltip="at bot.go:301: calling [(*github.com/eatMoreApple/openwechat.Client).GetCookieMap]" ]
"(*github.com/eatMoreApple/openwechat.Message).HasFile" -> "(*github.com/eatMoreApple/openwechat.Message).IsVoice" [ tooltip="at message.go:220: calling [(*github.com/eatMoreApple/openwechat.Message).IsVoice]" ]
"(*github.com/eatMoreApple/openwechat.Bot).HotLogin" -> "(*github.com/eatMoreApple/openwechat.Bot).hotLoginInit" [ tooltip="at bot.go:70: calling [(*github.com/eatMoreApple/openwechat.Bot).hotLoginInit]" ]
"(github.com/eatMoreApple/openwechat.Members).Groups" -> "(*github.com/eatMoreApple/openwechat.User).IsGroup" [ tooltip="at user.go:498: calling [(*github.com/eatMoreApple/openwechat.User).IsGroup]" ]
"(*github.com/eatMoreApple/openwechat.Message).FriendAddMessageContent" -> "github.com/eatMoreApple/openwechat.XmlFormString" [ tooltip="at message.go:260: calling [github.com/eatMoreApple/openwechat.XmlFormString]" ]
"(*github.com/eatMoreApple/openwechat.Self).Mps" -> "(*github.com/eatMoreApple/openwechat.Self).Members" [ tooltip="at user.go:193: calling [(*github.com/eatMoreApple/openwechat.Self).Members]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxGetMsgImg" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:523: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Client).SyncCheck" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:217: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk" -> "github.com/eatMoreApple/openwechat.getWebWxDataTicket" [ tooltip="at client.go:339: calling [github.com/eatMoreApple/openwechat.getWebWxDataTicket]" ]
"github.com/eatMoreApple/openwechat.getSuccessSentMessage" -> "github.com/eatMoreApple/openwechat.parseMessageResponseError" [ tooltip="at caller.go:365: calling [github.com/eatMoreApple/openwechat.parseMessageResponseError]" ]
"(*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo" -> "github.com/eatMoreApple/openwechat.scanXml" [ tooltip="at caller.go:96: calling [github.com/eatMoreApple/openwechat.scanXml]" ]
"(*github.com/eatMoreApple/openwechat.Caller).GetLoginInfo" -> "(github.com/eatMoreApple/openwechat.LoginInfo).Ok" [ tooltip="at caller.go:99: calling [(github.com/eatMoreApple/openwechat.LoginInfo).Ok]" ]
"(*github.com/eatMoreApple/openwechat.Bot).getNewWechatMessage" -> "(*github.com/eatMoreApple/openwechat.Message).init" [ tooltip="at bot.go:263: calling [(*github.com/eatMoreApple/openwechat.Message).init]" ]
"(github.com/eatMoreApple/openwechat.Friends).SendMsg" -> "github.com/eatMoreApple/openwechat.getTotalDuration" [ tooltip="at relations.go:111: calling [github.com/eatMoreApple/openwechat.getTotalDuration]" ]
"(*github.com/eatMoreApple/openwechat.Self).SendImageToFriend" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg" [ tooltip="at user.go:240: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg]" ]
"(*github.com/eatMoreApple/openwechat.Message).Receiver" -> "(github.com/eatMoreApple/openwechat.Members).SearchByUserName" [ tooltip="at message.go:99: calling [(github.com/eatMoreApple/openwechat.Members).SearchByUserName]\nat message.go:92: calling [(github.com/eatMoreApple/openwechat.Members).SearchByUserName]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxRevokeMsg" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxRevokeMsg" [ tooltip="at caller.go:323: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxRevokeMsg]" ]
"(github.com/eatMoreApple/openwechat.Friends).SendText" -> "(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends" [ tooltip="at relations.go:143: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToFriends]" ]
"(github.com/eatMoreApple/openwechat.Friends).SendImage" -> "github.com/eatMoreApple/openwechat.getTotalDuration" [ tooltip="at relations.go:155: calling [github.com/eatMoreApple/openwechat.getTotalDuration]" ]
"(github.com/eatMoreApple/openwechat.Groups).SendText" -> "(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToGroups" [ tooltip="at relations.go:302: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToGroups]" ]
"(*github.com/eatMoreApple/openwechat.Client).SyncCheck" -> "(github.com/eatMoreApple/openwechat.WechatDomain).SyncHost" [ tooltip="at client.go:199: calling [(github.com/eatMoreApple/openwechat.WechatDomain).SyncHost]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSendAppMsg" -> "github.com/eatMoreApple/openwechat.getSuccessSentMessage" [ tooltip="at caller.go:276: calling [github.com/eatMoreApple/openwechat.getSuccessSentMessage]" ]
"(*github.com/eatMoreApple/openwechat.Message).IsTransferAccounts" -> "(*github.com/eatMoreApple/openwechat.Message).IsMedia" [ tooltip="at message.go:196: calling [(*github.com/eatMoreApple/openwechat.Message).IsMedia]" ]
"(*github.com/eatMoreApple/openwechat.Message).GetFile" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxGetMedia" [ tooltip="at message.go:238: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxGetMedia]" ]
"(*github.com/eatMoreApple/openwechat.Friend).SendText" -> "(*github.com/eatMoreApple/openwechat.Self).SendTextToFriend" [ tooltip="at relations.go:28: calling [(*github.com/eatMoreApple/openwechat.Self).SendTextToFriend]" ]
"github.com/eatMoreApple/openwechat.DefaultClient" -> "(*github.com/eatMoreApple/openwechat.Client).AddHttpHook" [ tooltip="at client.go:64: calling [(*github.com/eatMoreApple/openwechat.Client).AddHttpHook]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk" -> "(github.com/eatMoreApple/openwechat.WechatDomain).FileHost" [ tooltip="at client.go:332: calling [(github.com/eatMoreApple/openwechat.WechatDomain).FileHost]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg" -> "github.com/eatMoreApple/openwechat.NewMediaSendMessage" [ tooltip="at caller.go:251: calling [github.com/eatMoreApple/openwechat.NewMediaSendMessage]" ]
"(*github.com/eatMoreApple/openwechat.Client).sendMessage" -> "github.com/eatMoreApple/openwechat.ToBuffer" [ tooltip="at client.go:278: calling [github.com/eatMoreApple/openwechat.ToBuffer]" ]
"(github.com/eatMoreApple/openwechat.Groups).Search" -> "(github.com/eatMoreApple/openwechat.Groups).SearchByRemarkName$1" [ tooltip="at relations.go:363: calling [(github.com/eatMoreApple/openwechat.Groups).SearchByRemarkName$1]" style="dashed" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnGroup" -> "(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler" [ tooltip="at message_handle.go:150: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" ]
"(*github.com/eatMoreApple/openwechat.Self).updateMembers" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact" [ tooltip="at user.go:139: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxGetContact]" ]
"(*github.com/eatMoreApple/openwechat.Group).SendImage" -> "(*github.com/eatMoreApple/openwechat.Self).SendImageToGroup" [ tooltip="at relations.go:216: calling [(*github.com/eatMoreApple/openwechat.Self).SendImageToGroup]" ]
"(*github.com/eatMoreApple/openwechat.Self).SendFileToFriend" -> "(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile" [ tooltip="at user.go:247: calling [(*github.com/eatMoreApple/openwechat.Caller).WebWxSendFile]" ]
"(github.com/eatMoreApple/openwechat.Groups).SendText" -> "(*github.com/eatMoreApple/openwechat.Group).SendText" [ tooltip="at relations.go:305: calling [(*github.com/eatMoreApple/openwechat.Group).SendText]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriend" -> "(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler" [ tooltip="at message_handle.go:145: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" ]
"(*github.com/eatMoreApple/openwechat.Message).IsSendByFriend" -> "(*github.com/eatMoreApple/openwechat.Message).IsSendByGroup" [ tooltip="at message.go:114: calling [(*github.com/eatMoreApple/openwechat.Message).IsSendByGroup]" ]
"(*github.com/eatMoreApple/openwechat.Message).Sender" -> "(*github.com/eatMoreApple/openwechat.User).Detail" [ tooltip="at message.go:63: calling [(*github.com/eatMoreApple/openwechat.User).Detail]" ]
"(*github.com/eatMoreApple/openwechat.Message).HasFile" -> "(*github.com/eatMoreApple/openwechat.Message).IsMedia" [ tooltip="at message.go:220: calling [(*github.com/eatMoreApple/openwechat.Message).IsMedia]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnFriendByNickName$1" -> "(*github.com/eatMoreApple/openwechat.Message).Sender" [ tooltip="at message_handle.go:135: calling [(*github.com/eatMoreApple/openwechat.Message).Sender]" ]
"(*github.com/eatMoreApple/openwechat.Friend).SendImage" -> "(*github.com/eatMoreApple/openwechat.Self).SendImageToFriend" [ tooltip="at relations.go:33: calling [(*github.com/eatMoreApple/openwechat.Self).SendImageToFriend]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnText$1" -> "(*github.com/eatMoreApple/openwechat.Message).IsText" [ tooltip="at message_handle.go:108: calling [(*github.com/eatMoreApple/openwechat.Message).IsText]" ]
"(*github.com/eatMoreApple/openwechat.Bot).handleLogin" -> "github.com/eatMoreApple/openwechat.GetRandomDeviceId" [ tooltip="at bot.go:171: calling [github.com/eatMoreApple/openwechat.GetRandomDeviceId]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnImage" -> "(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler" [ tooltip="at message_handle.go:113: calling [(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).RegisterHandler]" ]
"(github.com/eatMoreApple/openwechat.Friends).Search" -> "(github.com/eatMoreApple/openwechat.Friends).SearchByUserName$1" [ style="dashed" tooltip="at relations.go:98: calling [(github.com/eatMoreApple/openwechat.Friends).SearchByUserName$1]" ]
"(*github.com/eatMoreApple/openwechat.Client).webWxCheckUpload" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:643: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(github.com/eatMoreApple/openwechat.Friends).SearchByUserName" -> "(github.com/eatMoreApple/openwechat.Friends).Search" [ tooltip="at relations.go:71: calling [(github.com/eatMoreApple/openwechat.Friends).Search]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxSendAppMsg" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:467: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(*github.com/eatMoreApple/openwechat.Self).updateMembers" -> "(github.com/eatMoreApple/openwechat.Members).SetOwner" [ tooltip="at user.go:143: calling [(github.com/eatMoreApple/openwechat.Members).SetOwner]" ]
"(*github.com/eatMoreApple/openwechat.Caller).UploadMedia" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk" [ tooltip="at caller.go:222: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxUploadMediaByChunk]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxSendImageMsg" -> "(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg" [ tooltip="at caller.go:253: calling [(*github.com/eatMoreApple/openwechat.Client).WebWxSendMsgImg]" ]
"(*github.com/eatMoreApple/openwechat.Bot).DumpHotReloadStorage" -> "(*github.com/eatMoreApple/openwechat.JsonFileHotReloadStorage).Dump" [ style="dashed" tooltip="at bot.go:308: calling [(*github.com/eatMoreApple/openwechat.JsonFileHotReloadStorage).Dump]" ]
"(*github.com/eatMoreApple/openwechat.Caller).WebWxStatusNotify" -> "github.com/eatMoreApple/openwechat.scanJson" [ tooltip="at caller.go:127: calling [github.com/eatMoreApple/openwechat.scanJson]" ]
"(*github.com/eatMoreApple/openwechat.Bot).stopAsyncCALL" -> "(*github.com/eatMoreApple/openwechat.SyncCheckResponse).Error" [ style="dashed" tooltip="at bot.go:249: calling [(*github.com/eatMoreApple/openwechat.SyncCheckResponse).Error]" ]
"(github.com/eatMoreApple/openwechat.Groups).First" -> "(github.com/eatMoreApple/openwechat.Groups).Count" [ tooltip="at relations.go:254: calling [(github.com/eatMoreApple/openwechat.Groups).Count]" ]
"(*github.com/eatMoreApple/openwechat.Client).RemoveMemberFromChatRoom" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:607: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
"(github.com/eatMoreApple/openwechat.Groups).SendImage" -> "(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToGroups" [ tooltip="at relations.go:324: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToGroups]" ]
"(*github.com/eatMoreApple/openwechat.Client).webWxCheckUpload" -> "(*github.com/eatMoreApple/openwechat.Client).Do" [ tooltip="at client.go:656: calling [(*github.com/eatMoreApple/openwechat.Client).Do]" ]
"(*github.com/eatMoreApple/openwechat.Self).RemoveMemberFromGroup" -> "(*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom" [ tooltip="at user.go:309: calling [(*github.com/eatMoreApple/openwechat.Caller).RemoveFriendFromChatRoom]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxBatchGetContact" -> "(github.com/eatMoreApple/openwechat.Members).Count" [ tooltip="at client.go:242: calling [(github.com/eatMoreApple/openwechat.Members).Count]" ]
"(*github.com/eatMoreApple/openwechat.Group).Members" -> "(*github.com/eatMoreApple/openwechat.User).Detail" [ tooltip="at relations.go:226: calling [(*github.com/eatMoreApple/openwechat.User).Detail]" ]
"(*github.com/eatMoreApple/openwechat.SentMessage).ForwardToGroups" -> "(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToGroups" [ tooltip="at message.go:482: calling [(*github.com/eatMoreApple/openwechat.Self).ForwardMessageToGroups]" ]
"(*github.com/eatMoreApple/openwechat.MessageMatchDispatcher).OnCard$1" -> "(*github.com/eatMoreApple/openwechat.Message).IsCard" [ tooltip="at message_handle.go:128: calling [(*github.com/eatMoreApple/openwechat.Message).IsCard]" ]
"(*github.com/eatMoreApple/openwechat.Client).WebWxOplog" -> "(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost" [ tooltip="at client.go:477: calling [(github.com/eatMoreApple/openwechat.WechatDomain).BaseHost]" ]
}
@suntong
Copy link
Author

suntong commented Jul 22, 2021

callvis

@suntong
Copy link
Author

suntong commented Jul 22, 2021

callvis

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment