Приведите пример данных. Возможно запросы не соответствуют структуре.
Из того, что есть, вижу 2 ошибки
s = str(elem["sip"] + '\n')
если elem["sip"] не текстовый, то подобная конструкция выдаст ошибку, т.к. str не правильно использован.
f.readlines()
...
if elem["sip"] in f:
проверка не будет работать, т.к. f пустой, readlines() уже перемотал указатель в конец файла.