I tried the code below with doc-changed and could not get it to work, did the same with doc-saving and it worked. I am guessing it has to do with the hook context. one is capable of postablecommand, the other is not in the UIApplication context
from pyrevit import forms
from pyrevit import EXEC_PARAMS
from pyrevit import HOST_APP
import Autodesk
from Autodesk.Revit.UI import RevitCommandId
uiApp=HOST_APP.uiapp
CmndID = RevitCommandId.LookupCommandId('ID_PLAYLIST_DYNAMO')
print(CmndID)
CmId = CmndID.Id
print(CmId)
uiApp.PostCommand(CmId)