Discussions¶
You can interact with the discussions on each DSS object through the API.
Obtaining the discussions¶
The first step is always to retrieve a DSSObjectDiscussions
object corresponding to the DSS object your manipulating. Generally, it’s through a method called get_object_discussionss
# Get the discussions of a dataset
discussions = dataset.get_object_discussions()
# Get the discussion of a wiki article
discussions = wiki.get_article("my article").get_object_discussions()
# Get the discussions of a project
discussions = project.get_object_discussions()
# ...
List the discussions of an object¶
for discussion in discussions.list_discussions():
# Discussion is a DSSDiscussion object
print("Discussion with id: %s" % discussion.discussion_id)
Reading the messages of a discussion¶
for message in discussion.get_replies():
print("Message by author %s" % message.get_author())
print("Message posted on %s" % message.get_timestamp())
print("Message content: %s" % message.get_text())
Adding a new message to a discussion¶
discussion.add_reply("hello world\n# This is Markdown")
Creating a new discussion¶
new_discussion = discussions.create_discussion("Topic", "Hello, this is the message")
Reference documentation¶
-
class
dataikuapi.dss.discussion.
DSSObjectDiscussions
(client, project_key, object_type, object_id)¶ A handle to manage discussions on a DSS object
-
list_discussions
()¶ Get the list of discussions on the object
- Returns
list of discussions on the object
- Return type
-
create_discussion
(topic, message)¶ Create a new discussion
- Parameters
topic (str) – the discussion topic
message (str) – the markdown formatted first message
- Returns
the newly created discussion
- Return type
-
get_discussion
(discussion_id)¶ Get a specific discussion
- Parameters
discussion_id (str) – the discussion ID
- Returns
the discussion
- Return type
-
-
class
dataikuapi.dss.discussion.
DSSDiscussion
(client, project_key, object_type, object_id, discussion_id, discussion_data, discussion_data_has_replies)¶ Do not call directly, use
dataikuapi.dss.discussion.DSSObjectDiscussions.get_discussion()
-
get_metadata
()¶ Get the discussion metadata
- Returns
the discussion metadata
- Return type
dict
-
set_metadata
(discussion_metadata)¶ Update the discussion metadata
- Parameters
discussion_metadata (dict) – the discussion metadata
-
get_replies
()¶ Get the list of replies in this discussion
- Returns
a list of replies
- Return type
-
add_reply
(text)¶ Add a reply to a discussion
- Parameters
text (str) – the markdown formatted text to reply
-
-
class
dataikuapi.dss.discussion.
DSSDiscussionReply
(reply_data)¶ A read-only handle to access a discussion reply
-
get_raw_data
()¶ Get the reply raw data
- Returns
the reply data
- Return type
dict
-
get_text
()¶ Get the reply text
- Returns
the reply text
- Return type
str
Get the reply author
- Returns
the author ID
- Return type
str
-
get_timestamp
()¶ Get the reply timestamp
- Returns
the reply timestamp
- Return type
long
-
get_edited_timestamp
()¶ Get the last edition timestamp
- Returns
the last edition timestamp
- Return type
long
-