Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
opcua-cloning
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
CI / CD Analytics
Repository Analytics
Value Stream Analytics
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
yogesh.m
opcua-cloning
Commits
2121bfdd
Commit
2121bfdd
authored
Mar 06, 2023
by
yogesh.m
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update
parent
127e43c3
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
14 additions
and
6 deletions
+14
-6
hash_sender.py
hash_sender.py
+14
-6
No files found.
hash_sender.py
View file @
2121bfdd
...
@@ -2,6 +2,7 @@ from asyncua import Client
...
@@ -2,6 +2,7 @@ from asyncua import Client
import
asyncio
import
asyncio
import
socket
import
socket
from
time
import
sleep
from
time
import
sleep
import
pickle
ENDPOINT
=
'opc.tcp://2.2.2.7:53530/OPCUA/SimulationServer'
ENDPOINT
=
'opc.tcp://2.2.2.7:53530/OPCUA/SimulationServer'
NAMESPACE
=
'http://www.prosysopc.com/OPCUA/SimulationServer/'
NAMESPACE
=
'http://www.prosysopc.com/OPCUA/SimulationServer/'
...
@@ -18,20 +19,27 @@ async def get_send_hash():
...
@@ -18,20 +19,27 @@ async def get_send_hash():
nm_no
=
await
client
.
get_namespace_index
(
"http://www.prosysopc.com/OPCUA/SimulationNodes/"
)
nm_no
=
await
client
.
get_namespace_index
(
"http://www.prosysopc.com/OPCUA/SimulationNodes/"
)
while
True
:
while
True
:
sleep
(
1
)
sleep
(
1
)
main_obj
=
[]
main_obj
=
{}
hierarchy
=
{}
hierarchy
=
{}
Objects
=
await
root_objects
[
0
]
.
get_children
()
Objects
=
await
root_objects
[
0
]
.
get_children
()
for
sub_obj
in
Objects
:
for
sub_obj
in
Objects
:
if
(
sub_obj
.
nodeid
.
NamespaceIndex
==
nm_no
):
if
(
sub_obj
.
nodeid
.
NamespaceIndex
==
nm_no
):
display_name
=
await
sub_obj
.
read_display_name
()
display_name
=
await
sub_obj
.
read_display_name
()
identifier_type
=
sub_obj
.
nodeid
.
NodeIdType
.
_name_
identifier_type
=
sub_obj
.
nodeid
.
NodeIdType
.
_name_
ch
=
await
sub_obj
.
get_children
()
children
=
await
sub_obj
.
get_children
()
main_obj
=
main_obj
+
ch
for
ch
in
children
:
main_obj
[
"identifier"
]
=
ch
.
nodeid
.
Identifier
node_name
=
await
ch
.
read_display_name
()
main_obj
[
"node_name"
]
=
node_name
.
Text
datatype
=
await
ch
.
read_data_type_as_variant_type
()
main_obj
[
"datatype"
]
=
datatype
.
_value_
hierarchy
[
display_name
.
Text
]
=
{}
hierarchy
[
display_name
.
Text
]
=
{}
hierarchy
[
display_name
.
Text
][
"name"
]
=
identifier_type
hierarchy
[
display_name
.
Text
][
"name"
]
=
identifier_type
hierarchy
[
display_name
.
Text
][
"obj"
]
=
main_obj
hierarchy
[
display_name
.
Text
][
"obj"
]
=
pickle
.
dumps
(
main_obj
)
UDPClientSocket
.
sendto
(
str
.
encode
(
str
(
hash
(
str
(
main_obj
)))
+
"&"
+
str
(
hierarchy
)),
serverAddressPort
)
hierarchy
[
"hash"
]
=
hash
(
str
(
main_obj
))
print
(
str
(
hash
(
str
(
main_obj
)))
+
"&"
+
str
(
hierarchy
))
hierarchy
=
pickle
.
dumps
(
hierarchy
)
UDPClientSocket
.
sendto
(
hierarchy
,
serverAddressPort
)
print
(
hierarchy
)
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
asyncio
.
run
(
get_send_hash
())
asyncio
.
run
(
get_send_hash
())
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment