import datetime
import sys
+import smtplib
+from email.mime.text import MIMEText
from suds.client import Client
from suds.transport.http import HttpAuthenticated
def create_member(client, username, mail, ext):
newMember = client.factory.create('Member')
newMember.name = username
- newMember.password = "1234"
+ # newMember.password = "1234"
newMember.displayName = username
newMember.extension = ext
newMember.Language = "en"
return newMember
+# Sends the log created from a single run to email
+def email(username, email):
+ print "email: {}".format(email)
+ msg = MIMEText("""
+ An account has been created with your e-mail address. \n
+ Your username is: {}
+ Visit https://vidyo-tsd.uio.no/forgotpassword.html to get your password. \n
+ To start recording videos open VidyoDesktop and
+ use https://vidyo-tsd.uio.no as your VidyoPortal.
+ """.format(username))
+
+ msg['Subject'] = 'New TSD-Vidyo account'
+ msg['From'] = 'noreply@uio.no'
+ msg['To'] = email
+
+ s = smtplib.SMTP('localhost')
+ s.sendmail('noreply@uio.no', [email], msg.as_string())
+ s.quit()
+
+
def read_users(user_file):
l = []
client = connect("tsd-import", "glak_a73")
ext = get_extension(client)
user_data = read_users(user_file)
+ email("vegarko", "vegard.korvald@usit.uio.no")
+ sys.exit()
- for l in user_data:
+ for data in user_data:
ext = ext+1
- print "user: {}".format(l[0])
+ print "user: {}".format(data[0])
print "ext: {}".format(ext)
- new_member = create_member(client, l[0], l[1], str(ext))
+ new_member = create_member(client, data[0], data[1], str(ext))
try:
- print client.service.addMember(new_member)
+ retval = client.service.addMember(new_member)
+ print retval
except Exception as e:
print "Error while using addMember(new_member): {}".format(e)
+ if retval[1] == "OK":
+ email(data[0], data[1])
import grp
import pwd
-src = "/uio/kant/usit-ft-u1/vegarko/git/korvald/downloads/completed/"
-fx = "/uio/kant/usit-ft-u1/vegarko/git/korvald/tsd/"
+src = "/fx_alt/p76/import_vidyo/completed/"
+fx = "/tsd/p76/data/durable/"
def run(record):
with open(src+json_file) as f:
data = json.load(f)
pnum = data['recordedBy'][:3]
- folder = data['roomName']
- username = data['recordedBy'][:-4]
- dest = fx+pnum+"/durable/"+folder+"/"
+ username = data['recordedBy']
+ dest = fx+username+"/"
- shutil.move(src+json_file, dest+json_file)
- shutil.move(src+video, dest+video)
+ if os.path.isdir(dest):
+ print dest
+ shutil.move(src+json_file, dest+json_file)
+ shutil.move(src+video, dest+video)
+ else:
+ print "path doesnt exist: "
+ print dest
+ '''
try:
- gid = grp.getgrnam(pnum+"-import-vidyo-group").gr_gid
+ gid = grp.getgrnam(username+"-vidyo-group").gr_gid
except KeyError as e:
- print "Group {}-import-vidyo-group does not exist: {}".format(pnum, e)
-
- try:
- uid = pwd.getpwnam(username).pw_uid
- except KeyError as e:
- print "User {} does not exist: {}".format(username, e)
-
- # os.chmod(dest+json_file, 0770)
- # os.chmod(dest+video, 0770)
- # os.chown(dest+json_file, uid, gid)
- # os.chown(dest+video, uid, gid)
+ print "Group {}-vidyo-group does not exist: {}".format(pnum, e)
+ os.chmod(dest+json_file, 0770)
+ os.chmod(dest+video, 0770)
+ os.chown(dest+json_file, gid=gid)
+ os.chown(dest+video, gid=gid)
+ '''
if __name__ == "__main__":
for f in os.listdir(src):